Jump to content


Photo

บอทไม่ยอมเดินคับ รบกวนที


  • Please log in to reply
2 replies to this topic

#1 กรีสสสสสสสสสสสสสสสสสส

กรีสสสสสสสสสสสสสสสสสส

    ทหารศึกดาบแยก

  • Members
  • 18 posts

Posted 23 June 2007 - 12:25:51 AM

var Point1X,Point1Y,Point2X,Point2Y: Word;
var PartnerFai: Byte;
var isLag: Integer;

procedure Init;
begin
SetIsNotEat('ยาคืนวิญญาณ');
SetIsNotEat('ยาวิญญาณม่วง');
PartnerFai:= 100;
echoChat('KoRn Bot โหลดเสร็จแล้วครับ',clRed);
end;

procedure LogOn;
begin
Point1X := 602;
Point1Y := 895;
Point2X := 922;
Point2Y := 875;
Walk(182,1035);
isLag := 0;
end;

procedure PartyReady;
begin
echoChat('พร้อมเดิน',clRed);
Horse;
walk(602,895);
end;

procedure BattleStarted;
begin
CheckDisconnect;
end;

Procedure OnTimer;
begin
ClickNpc(4);
ClickNpc(2);
Inc(isLag);
if (isLag mod 60) = 0 then Reconnect(5);
end;


procedure MyAttack;
var m : TCombatMonster;
n : byte;
sk : string;
begin
m := Combat.FindF1Monster;
n := Combat.Size;
sk := 'ยิงก้อนหิน';
if (MyPlayer.Hp < 0.25*MyPlayer.MaxHp) or (MyPartner.Hp < 0.25*MyPartner.MaxHp) or (not MyParty.isReady) then
begin
if (MyPlayer.Sp > 10)
then SendAttack(MyPlayer.Row,MyPlayer.Col,MyPlayer.Row,MyPlayer.Col,'วิชาหลบหนี')
else SendAttack(MyPlayer.Row,MyPlayer.Col,MyPlayer.Row,MyPlayer.Col,'หลบหนี');
end
else
SendAttack(MyPlayer.Row,MyPlayer.Col,m.Row,m.Col,sk);
end;

procedure MyPartnerAttack;
var m: TCombatMonster;
begin
m := Combat.FindF1Monster;
SendAttack(MyPartner.Row,MyPartner.Col,m.Row,m.Col,'มือเปล่า');
end;

procedure BattleStoped;
begin
isLag := 0;
if (not MyParty.isReady) then
begin
Walk(182,1035);
end;
if (MyPlayer.Sp < 0.25*MyPlayer.MaxSp) or (MyPartner.Sp < 0.25*MyPartner.MaxSp) then
begin
AutoEat;
AutoHeal;
end;
if (MyPlayer.Hp > 0.75*MyPlayer.MaxHp) or (MyPartner.Hp > 0.75*MyPartner.MaxHp) then
begin
Echo('เดิน',clRed);
if (MyPlayer.X = Point1X) and (MyPlayer.Y = Point1Y)
then Walk(Point2X,Point2Y)
else Walk(Point1X,Point1Y);
end;
end;

procedure CheckDisconnect;
begin
if (MyPlayer.Hp < 0.25*MyPlayer.MaxHp) or (MyPartner.Hp < 0.25*MyPartner.MaxHp) then
begin
Echo('AutoHeal : เติมเลือดด่วน ไม่พอเลี้ยงชีพแล้ว !!',clBlack);
AutoHeal;
AutoEat;
if (MyPlayer.Hp < 0.10*MyPlayer.MaxHp) or (MyPartner.Hp < 0.10*MyPartner.MaxHp) then
Echo('Disconnected : เลือดไม่พอเลี้ยงชีพแล้ว !!',clBlack);
Disconnect;
end;
if (MyPartner.Fai < PartnerFai) then
begin
Echo('Disconnected : ขุนพลซื้อสัตย์ต่ำกว่าที่กำหนด !!',clBlack);
Disconnect;
end;
end;

begin
Init;
end.



แก้ไขเต็มรูปแบบ
แก้ไขแบบเร็ว
Mangtom Dec 15 2006, 02:50 PM โพสต์ #2


เจี่ยงกั้น


กลุ่ม: Members
โพสต์: 61
เข้าร่วม: 15-December 06
สมาชิกลำดับที่: 168
Level: 6
Life: 0 / 142

Magic: 20 / 215

Exp: 69%




ส่วนของลูกตี้ครับ
เพิ่ม - เชคซื่อขุน
- เรียกปาตี้ เอาไปไว้ใน ontimer ให้เชคตลอดเวลาในกรณีไม่เข้าตี้

Procedure Logon;
begin
Walk(122,735); จุดที่จะให้บอทเดินไปรอ
end;

procedure BattleStoped;
begin
if (not MyParty.isReady) then
begin
Walk(122,735); จุดที่จะให้บอทเดินไปรอ
RequestParty('mangtom'); ใส่ชื่อคนนำปาร์ตี้ลงไป
end;

var PartnerFai: Byte;

procedure Init;
begin
SetIsNotEat('ยาคืนวิญญาณ');
SetIsNotEat('ยาวิญญาณม่วง');
SetIsNotEat('ยาวิญญาณเขียว');
SetIsCB('สาลี่พลังปราณ');
SetIsCB('คุกกี้เนย');
SetIsCB('ผงช่วยแผล');
PartnerFai:= 100;
echoChat('KoRn Bot โหลดเสร็จแล้วครับ',clRed);
end;

Procedure Logon;
begin
Walk(182,1035);
end;

procedure OnTimer;
begin
if (not MyParty.isReady) then
begin
Walk(182,1035);
RequestParty('Mangtom');
end;
end;

procedure BattleStarted;
begin
CheckDisconnect;
end;

procedure MyAttack;
var m : TCombatMonster;
n : byte;
sk : string;
begin
m := Combat.FindF1Monster;
n := Combat.Size;
sk := 'ธนูไฟ';
if (MyPlayer.Hp < 0.25*MyPlayer.MaxHp) or (MyPartner.Hp < 0.25*MyPartner.MaxHp) or (not MyParty.isReady) then
begin
if (MyPlayer.Sp > 10)
then SendAttack(MyPlayer.Row,MyPlayer.Col,MyPlayer.Row,MyPlayer.Col,'วิชาหลบหนี')
else SendAttack(MyPlayer.Row,MyPlayer.Col,MyPlayer.Row,MyPlayer.Col,'หลบหนี');
end
else
SendAttack(MyPlayer.Row,MyPlayer.Col,m.Row,m.Col,sk);
end;

procedure MyPartnerAttack;
var m: TCombatMonster;
sk: String;
begin
m := Combat.FindF1Monster;
sk := 'ธนูไฟ';
SendAttack(MyPartner.Row,MyPartner.Col,m.Row,m.Col,sk);
end;

procedure BattleStoped;
begin
if (MyPlayer.Sp < 0.25*MyPlayer.MaxSp) or (MyPartner.Sp < 0.25*MyPartner.MaxSp) then
begin
AutoEat;
end;
if (MyPlayer.Hp < 0.75*MyPlayer.MaxHp) or (MyPartner.Hp < 0.75*MyPartner.MaxHp) then
begin
AutoEat;
AutoHeal;
end;
end;

procedure CheckDisconnect;
begin
if (MyPlayer.Hp < 0.25*MyPlayer.MaxHp) or (MyPartner.Hp < 0.25*MyPartner.MaxHp) then
begin
Echo('AutoHeal : เติมเลือดด่วน ไม่พอเลี้ยงชีพแล้ว !!',clBlack);
AutoHeal;
AutoEat;
if (MyPlayer.Hp < 0.10*MyPlayer.MaxHp) or (MyPartner.Hp < 0.10*MyPartner.MaxHp) then
Echo('Disconnected : เลือดไม่พอเลี้ยงชีพแล้ว !!',clBlack);
Disconnect;
end;
if (MyPartner.Fai < PartnerFai) then
begin
Echo('Disconnected : ขุนพลซื้อสัตย์ต่ำกว่าที่กำหนด !!',clBlack);
Disconnect;
end;
end;

begin
Init;
end.


บอทตี้ครบแล้วแต่มันไม่ยอมเดินอะคับ ผมทำตรงไหนผิดป่าวอะ มะได้ใช้นานลืมหมด

#2 KoRnRoom99

KoRnRoom99

    Exclusive Member

  • Exclusive Programmer
  • 10104 posts

Posted 25 June 2007 - 08:56:30 AM

ดูๆแล้วก็น่าจะถูกแล้วนะครับ
IPB Image
IPB Image
Works: KoRnBot Project,TSLoadDatFile
Thanks X CroSs, Truebot, TSBot, Solars, JackY, some1, Storm24, AssertionFailed from www.skjune.com
IPB ImageIPB ImageIPB ImageIPB ImageIPB ImageIPB Image

#3 Roekytoya

Roekytoya

    ง่ออ๋อง ซุนกวน

  • Members
  • 261 posts

Posted 24 July 2007 - 06:04:14 PM

ผมก็ลองสคริพตัวเก่าดูแล้วนะคับ รู้สึกว่าบอทจะไม่ยอมเดินด้วยนะคับ ผมก็เลยลองแก้ไขสคริพเองดูคับผม

อันนี้ของหัวหน้าปาร์ตี้นะคับ


var Point1X,Point1Y,Point2X,Point2Y: Word;
var PartnerFai : Byte;

procedure Init;
begin
    SetIsNotEat('ยาคืนวิญญาณ');         // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('ยาวิญญาณม่วง');         // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('ยาวิญญาณเขียว');     // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('ยาวิญญาณแดง');         // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('ยาคืนวิญญาณทอง');     // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('ยาเก้าหยาง');         // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('ช็อกโกรักแท้');         // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('รากบัวชวนจง');         // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('สาลี่เชียงจง');         // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('ผักกาดขาวดอง');         // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('ยาเม็ดสิบซ้ำ');         // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('ปลาคอท');         // เซ็ตของที่บอทห้ามกิน    
    SetIsNotEat('เนื้อแผ่น');         // เซ็ตของที่บอทห้ามกิน    
    SetIsNotEat('กะหล่ำปลี');         // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('ยาน้ำระงับว่าง');         // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('ผักขาวนุ่ม');         // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('อุ้งตีนหมีป่า');         // เซ็ตของที่บอทห้ามกิน    
    SetIsNotEat('ปลาคอท');         // เซ็ตของที่บอทห้ามกิน    
    SetIsNotEat('หมูปิ้งทั้งตัว');         // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('ปลาเหลืองทอด');         // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('ไม้ผลป่าสุก');         // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('ปลาคอท');         // เซ็ตของที่บอทห้ามกิน
//    SetIsDp('พรมเทพท่อง');        // ทิ้งของ
//    SetIsDp('พรมจัวจวิ้น');        // ทิ้งของ
//    SetIsCB('ยาดอกไม้แดง');        // บริจาค
//    SetIsCB('คุกกี้เนย');             // บริจาค
//    SetIsCB('สุรากู่เหลียง');         // บริจาค
//    SetIsCB('มะละกอเขียว');         // บริจาค
//    SetIsCB('ผงแก้ปวด');         // บริจาค
//    SetIsCB('ยาปราณดำเนิน');         // บริจาค
//    SetIsCB('ยาเม็ดใจทารก');         // บริจาค
    PartnerFai := 95;             //ซื่อน้อยกว่า<<จะตัดสาย
    echoChat('koRn Bot โหลดเสร็จแล้วครับ',clRed);
end;

procedure LogOn;
begin
    Point1X := 1042;        // จุดเดินที่ 1 แกน X1
    Point1Y := 1575;        // จุดเดินที่ 1 แกน Y1
    Point2X := 622;        // จุดเดินที่ 2 แกน X2
    Point2Y := 1955;        // จุดเดินที่ 2 แกน Y2
end;

procedure PartyReady;
begin
    echoChat('พร้อมเดิน',clRed);
    Horse;
    walk(1042,1575);    // เมื่อปาร์ตี้ครบบอทจะเดินไปยังจุดแรก
end;

procedure BattleStarted;
begin
    Horse;
    CheckDisconnect;
end;

procedure MyAttack;
var   m: TCombatMonster;
    sk: String;
begin
    m := Combat.FindBestMonster;
    if ((MyPlayer.Hp < 0.25*MyPlayer.MaxHp) or (MyPartner.Hp <0.25*MyPartner.MaxHp) or (m.Name <> 'ทหารม้าหนัก')) then
begin
    if (MyPlayer.Sp > 10)
    then SendAttack(MyPlayer.Row,MyPlayer.Col,MyPlayer.Row,MyPlayer.Col,'วิชาหลบหนี')
    else SendAttack(MyPlayer.Row,MyPlayer.Col,MyPlayer.Row,MyPlayer.Col,'หลบหนี');
end;
    if (MyPlayer.Sp > 28)
    then sk := 'มือเปล่า'
    else sk := 'มือเปล่า';
    SendAttack(MyPlayer.Row,MyPlayer.Col,m.Row,m.Col,sk);
end;

procedure MyPartnerAttack;
var    m: TCombatMonster;
begin
    m := Combat.FindMaxLevel;
    SendAttack(MyPartner.Row,MyPartner.Col,m.Row,m.Col,'มือเปล่า');
end;

procedure BattleStoped;
begin
    if (MyPlayer.Sp < 0.25*MyPlayer.MaxSp) or (MyPartner.Sp < 0.25*MyPartner.MaxSp) then
    AutoHeal;
    AutoEat;
    if (MyPlayer.Hp < 0.25*MyPlayer.MaxHp) or (MyPartner.Hp < 0.25*MyPartner.MaxHp) then
    AutoHeal;
    AutoEat;
    CheckDisconnect;
    if (SpCount = 0) and (HpCount = 0) then Disconnect;
begin
    Echo('เดิน',clRed);
    if (MyPlayer.X = Point1X) and (MyPlayer.Y = Point1Y)
    then Walk(Point2X,Point2Y)
    else Walk(Point1X,Point1Y);
end;
end;

procedure NpcMove(NpcId: Byte; X,Y: Integer);
begin
      if (((MyPlayer.X - X) > 50) or ((MyPlayer.X - X) < 50) and ((MyPlayer.Y - Y) > 50) or ((MyPlayer.Y-Y)<50)) then
        ClickNpc(NpcId);
end;

procedure PlayerOffline(PlayerName: String);
begin
    if (PlayerName = 'ใส่ชื่อลูกน้องปาร์ตี้1') then Reconnect(10);
end;

procedure CheckDisconnect;
begin
    if (MyPlayer.Hp < 0.10*MyPlayer.MaxHp) or (MyPartner.Hp < 0.10*MyPartner.MaxHp) then
begin
    Echo('AutoHeal : เติมเลือดด่วน ไม่พอเลี้ยงชีพแล้ว !!',clBlack);
    AutoHeal;
    AutoEat;
    if (MyPlayer.Hp < 0.10*MyPlayer.MaxHp) or (MyPartner.Hp < 0.10*MyPartner.MaxHp) then
    Echo('Disconnected : เลือดไม่พอเลี้ยงชีพแล้ว !!',clBlack);
    Disconnect;
end;
    if (MyPartner.Fai < PartnerFai) then
begin
    Echo('Disconnected : ขุนพลซื้อสัตย์ต่ำกว่าที่กำหนด !!',clBlack);
    Disconnect;
end;    
end;

begin
Init;
    Reconnect(5);     // <<<< ใส่ตรงนี้ครับ
end.



อันนี้ของลูกน้อง



var PartnerFai : Byte;

procedure Init;
begin
    SetIsNotEat('ยาคืนวิญญาณ');         // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('ยาวิญญาณม่วง');         // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('ยาวิญญาณเขียว');     // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('ยาวิญญาณแดง');         // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('ยาคืนวิญญาณทอง');     // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('ยาเก้าหยาง');         // เซ็ตของที่บอทห้ามกิน
    SetIsNotEat('ช็อกโกรักแท้');         // เซ็ตของที่บอทห้ามกิน
//    SetIsDp('พรมเทพท่อง');        // ทิ้งของ
//    SetIsDp('พรมจัวจวิ้น');        // ทิ้งของ
//    SetIsCB('ยาดอกไม้แดง');        // บริจาค
//    SetIsCB('คุกกี้เนย');             // บริจาค
//    SetIsCB('สุรากู่เหลียง');         // บริจาค
//    SetIsCB('มะละกอเขียว');         // บริจาค
//    SetIsCB('ผงแก้ปวด');         // บริจาค
//    SetIsCB('ยาปราณดำเนิน');         // บริจาค
//    SetIsCB('ยาเม็ดใจทารก');         // บริจาค
    PartnerFai := 95;             //ซื่อน้อยกว่า<<จะตัดสาย
    echoChat('koRn Bot โหลดเสร็จแล้วครับ',clRed);
end;

procedure BattleStarted;
begin
    Horse;
    CheckDisconnect;
end;

procedure MyAttack;
var   m: TCombatMonster;
    sk: String;
begin
    m := Combat.FindBestMonster;
    if ((MyPlayer.Hp < 0.25*MyPlayer.MaxHp) or (MyPartner.Hp <0.25*MyPartner.MaxHp) or (m.Name <> 'ทหารม้าหนัก')) then
begin
    if (MyPlayer.Sp > 10)
    then SendAttack(MyPlayer.Row,MyPlayer.Col,MyPlayer.Row,MyPlayer.Col,'วิชาหลบหนี')
    else SendAttack(MyPlayer.Row,MyPlayer.Col,MyPlayer.Row,MyPlayer.Col,'หลบหนี');
end;
    if (MyPlayer.Sp > 28)
    then sk := 'มือเปล่า'
    else sk := 'มือเปล่า';
    SendAttack(MyPlayer.Row,MyPlayer.Col,m.Row,m.Col,sk);
end;

procedure MyPartnerAttack;
var    m: TCombatMonster;
begin
    m := Combat.FindMaxLevel;
    SendAttack(MyPartner.Row,MyPartner.Col,m.Row,m.Col,'มือเปล่า');
end;

procedure BattleStoped;
begin
    if (MyPlayer.Sp < 0.25*MyPlayer.MaxSp) or (MyPartner.Sp < 0.25*MyPartner.MaxSp) then
    AutoHeal;
    AutoEat;
    if (MyPlayer.Hp < 0.25*MyPlayer.MaxHp) or (MyPartner.Hp < 0.25*MyPartner.MaxHp) then
    AutoHeal;
    AutoEat;
    CheckDisconnect;
    if (SpCount = 0) and (HpCount = 0) then Disconnect;
end;

procedure PlayerOffline(PlayerName: String);
begin
    if (PlayerName = 'ใส่ชื่อหัวหน้าปาร์ตี้') then Reconnect(10);
end;

procedure CheckDisconnect;
begin
    if (MyPlayer.Hp < 0.10*MyPlayer.MaxHp) or (MyPartner.Hp < 0.10*MyPartner.MaxHp) then
begin
    Echo('AutoHeal : เติมเลือดด่วน ไม่พอเลี้ยงชีพแล้ว !!',clBlack);
    AutoHeal;
    AutoEat;
    if (MyPlayer.Hp < 0.10*MyPlayer.MaxHp) or (MyPartner.Hp < 0.10*MyPartner.MaxHp) then
    Echo('Disconnected : เลือดไม่พอเลี้ยงชีพแล้ว !!',clBlack);
    Disconnect;
end;
    if (MyPartner.Fai < PartnerFai) then
begin
    Echo('Disconnected : ขุนพลซื้อสัตย์ต่ำกว่าที่กำหนด !!',clBlack);
    Disconnect;
end;    
end;

begin
Init;
    Reconnect(5);     // <<<< ใส่ตรงนี้ครับ
end.



พอแก้ขัดไปชั่วคราวได้นะคับ





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users