Em muốn 1 đội bot chỉ có 4 người là vào đánh luôn, hoặc 2 người .... vào đánh luôn thì phải sửa cái gì ạ ? Mong các anh chỉ em với nhé, em cám ơn nhìu
Đơn giản , để tui share ra cho xem thử nè : VD : cái scirp này là bot Cự lộc double DisconnectFlag = 0.3; // Disconnect when current HP is below 30% double hpFractionEat = 0.8; //Eat HP when current HP<= 80% double spFractionEat = 0.8; double hpFraction = 0.95; //Eat until current HP >= 95 % double spFraction = 0.95; byte DisconFai = 00; // Faith of warrior to disconnect byte battle_count = 0; byte NS_count = 0; byte myturn = 0; byte peturn = 0; byte pt1 = 0; byte pt2 = 0; byte pt3 = 0; byte pt4 = 0; double mapid1 = 12013; double mapid2 = 12521; byte warpid1 = 1; byte warpid2 = 5; /***** Chinh sua ID Member o day *****/ uint idmem1 = 2130481; uint idmem2 = 1190343; uint idmem3 = 711816; uint idmem4_sena = 1189816; /*************************************/ /*********************** My Attack *************************/ public override void MyAttack() { myturn++; if (myturn == 1) { CharacterInfo MyChar = ts.Character; //NPCCombatObject Monster = findMonster(); ts.SendAttack(MyChar.Row, MyChar.Col, 0, 2, 12003); } if (myturn >=2) { CharacterInfo MyChar = ts.Character; //NPCCombatObject Monster = findMonster(); ts.SendAttack(MyChar.Row, MyChar.Col, 0, 3, 17001); } } /******************* My Partner Attack *********************/ public override void MyPartnerAttack() { peturn++; if (peturn == 1) { CharacterInfo MyWarrior = ts.CurrentPartner; //NPCCombatObject Monster = findMonster(); ts.SendAttack(MyWarrior.Row, MyWarrior.Col, 0, 2, 10000); } if (peturn >= 2) { CharacterInfo MyWarrior = ts.CurrentPartner; //NPCCombatObject Monster = findMonster(); ts.SendAttack(MyWarrior.Row, MyWarrior.Col, 0, 3, 10000); } } /********************* Battle Started **********************/ public override void BattleStarted() { battle_count++; myturn = 0; peturn = 0; } /********************* Battle Stopped ***********************/ public override void BattleStopped() { AutoEatFood(); ProcessInventoryAction(); CheckDisconnect(); ViewState(); } /******************* Receive Question *********************/ public override void doRecvQuestion() { NS_count++; } /******************** Response Answer **********************/ public override void ResponseAnswer() { string tmp=ts.LastQuestion.Replace("=?",""); int ans=ts.Eval(tmp); byte ans_index=Convert.ToByte(ts.LastAnswers[ans.ToString()]); ts.Answer(ans_index); } /******************** NPC Dialog Menu **********************/ public override void NpcDialogMenu(ushort DialogId) { debug("Dialog Menu ID = "+DialogId.ToString()); } /********************* NPC Dialog ID ***********************/ public override void NpcDialog(ushort DialogId) { debug("Dialog ID = "+DialogId.ToString()); } /********************* On NPC Appear ***********************/ public override void onNPCAppear(ushort npcmapid, int x, int y) { } /************************ On Timer *************************/ public override void OnTimer() { if (pt1 == 0) {ts.AcceptParty(idmem1);} if (pt2 == 0) {ts.AcceptParty(idmem2);} if (pt3 == 0) {ts.AcceptParty(idmem3);} if (pt4 == 0) {ts.AcceptParty(idmem4_sena);} } /********************* Accepted Party **********************/ public override void AcceptedParty(uint playerid) { if (playerid == idmem1) {debug(playerid + " Gia nhập đội ngũ");pt1 = 1;} if (playerid == idmem2) {debug(playerid + " Gia nhập đội ngũ");pt2 = 1;} if (playerid == idmem3) {debug(playerid + " Gia nhập đội ngũ");pt3 = 1;} if (playerid == idmem4_sena) {debug(playerid + " Gia nhập đội ngũ");pt4 = 1; ts.Sena(idmem4_sena);debug(playerid + " Làm Quân Sư");} if (pt1 ==1 && pt2 == 1 && pt3 == 1 && pt4 == 1) {ts.SetTimerOnOff(false);ts.delay(1000);debug("Đội ngũ đã đầy -> Start");Start();} } /*********************** Party Stop ************************/ public override void PartyStop(uint playerid) { if (playerid == idmem1) {debug(playerid+" Rời khỏi đội ngủ -> Disconnect !!!");ts.Disconnect();} if (playerid == idmem2) {debug(playerid+" Rời khỏi đội ngủ -> Disconnect !!!");ts.Disconnect();} if (playerid == idmem3) {debug(playerid+" Rời khỏi đội ngủ -> Disconnect !!!");ts.Disconnect();} if (playerid == idmem4_sena) {debug(playerid+" Rời khỏi đội ngủ -> Disconnect !!!");ts.Disconnect();} } /********************** Warp Finish ************************/ public override void warpFinish() { Start(); } /************************* Start ***************************/ public override void Start() { if (ts.Character.mapid == mapid1) { ts.Warp(warpid1); return; } else if (ts.Character.mapid == mapid2) { ts.Warp(warpid2); return; } } /************************** Stop ***************************/ public override void Stop() { } /*********************** View State ************************/ void ViewState() { debug("************************************************** **********************",255) ; debug(" Số trận đánh : " + battle_count ,255) ; debug(" HP của "+ts.Character.CharName+" = " + ts.Character.HP +" "+ "/" +" "+ ts.Character.MAXHP,255); debug(" HP của "+ts.CurrentPartner.CharName +" = " + ts.CurrentPartner.HP + " "+"/" +" "+ ts.CurrentPartner.MAXHP +" "+" FAI = " + ts.CurrentPartner.fai,255); debug(" Số lần gặp BTQ : "+ NS_count +" Số con ma : " + ts.Character.ghost ,255) ; debug("======= Script by Jet007 - Copy Right GameVN–™ =======",255) ; } /********************* Fishish Answer **********************/ public override void FinishAnswer() { ts.delay(2000); Start(); } /**************** Request Party Accept From ****************/ //public override void RequestPartyAcceptFrom(uint playerid) //{ //if (playerid == idmem1) {ts.delay(500);ts.AcceptParty(playerid); pt1 = 1;debug(playerid + " Johned team");} //if (playerid == idmem2) {ts.delay(500);ts.AcceptParty(playerid); pt2 = 1;debug(playerid + " Johned team");} //if (playerid == idmem3) {ts.delay(500);ts.AcceptParty(playerid); pt3 = 1;debug(playerid + " Johned team");} //if (playerid == idmem4_sena) {ts.delay(500);ts.AcceptParty(playerid);ts.delay(5 00);ts.Sena(playerid); pt4 = 1;debug(playerid + " Johned team, Quân Sư = "+playerid);} //if (pt1 == 1 && pt2 == 1 && pt3 == 1 && pt4 == 1) {debug("Party Full -> Start ");Start();} //} /************************ Init Bot *************************/ public override void InitBot() { ts.SetTimerOnOff(true); if (ts.Character.mapid == mapid2) {ts.Warp(warpid2);} AddDropItemList("viênongmật"); AddDropItemList("tựđ uốngthuốc"); AddDropItemList("viên công kích"); ViewState(); } bạn muốn pt 1 hay nhiều thì làm như sau : sửa uint idmem1 = 0 if (pt1 == 0) {ts.AcceptParty(idmem1);} << delete nó đi if (playerid == idmem1) {debug(playerid + " Gia nhập đội ngũ");pt1 = 1;} <<< delete nó luôn if (pt1 ==1 && pt2 == 1 && pt3 == 1 && pt4 == 1) {ts.SetTimerOnOff(false);ts.delay(1000);debug("Đội ngũ đã đầy -> Start");Start();} <<<< sửa pt1 =0 bạn làm theo cách mình chỉ trên thì pt còn 4 là auto start , chúc bạn thành công
theo cach cua ban kia cung co cai hay , nhung minh co cach la don gian nhat va le nhat ko phai del ji ca, chi sua doi chut xiu. VD doan ni` : double DisconnectFlag = 0.3; // Disconnect when current HP is below 30% double hpFractionEat = 0.8; //Eat HP when current HP<= 80% double spFractionEat = 0.8; double hpFraction = 0.95; //Eat until current HP >= 95 % double spFraction = 0.95; byte DisconFai = 00; // Faith of warrior to disconnect byte battle_count = 0; byte NS_count = 0; byte myturn = 0; byte peturn = 0; byte pt1 = 0; byte pt2 = 0; byte pt3 = 0; byte pt4 = 0; double mapid1 = 12013; double mapid2 = 12521; byte warpid1 = 1; byte warpid2 = 5; /***** Chinh sua ID Member o day *****/ uint idmem1 = 2130481; uint idmem2 = 1190343; uint idmem3 = 711816; uint idmem4_sena = 1189816; /*************************************/ /*********************** My Attack *************************/ public override void MyAttack() { myturn++; if (myturn == 1) { CharacterInfo MyChar = ts.Character; //NPCCombatObject Monster = findMonster(); ts.SendAttack(MyChar.Row, MyChar.Col, 0, 2, 12003); } if (myturn >=2) { CharacterInfo MyChar = ts.Character; //NPCCombatObject Monster = findMonster(); ts.SendAttack(MyChar.Row, MyChar.Col, 0, 3, 17001); } } /******************* My Partner Attack *********************/ public override void MyPartnerAttack() { peturn++; if (peturn == 1) { CharacterInfo MyWarrior = ts.CurrentPartner; //NPCCombatObject Monster = findMonster(); ts.SendAttack(MyWarrior.Row, MyWarrior.Col, 0, 2, 10000); } if (peturn >= 2) { CharacterInfo MyWarrior = ts.CurrentPartner; //NPCCombatObject Monster = findMonster(); ts.SendAttack(MyWarrior.Row, MyWarrior.Col, 0, 3, 10000); } } ***************************** ban coi tren dau` co cai' byte pt1 = 0; byte pt2 = 0; byte pt3 = 0; byte pt4 = 0; neu ban mun bo? mem nao`, chi can thay so' 0 (khong) = so 1 la okie. Chuc ban thanh` cong
VD:nếu bot 3 người thì bỏ 1 hàm đi byte pt 1 uint idmem1 = if (pt1 ==1 && pt2 == 1 && pt3 == 1 && pt4 == 1 bỏ pt==1 && sao cho if(pt2 == 1 && pt3 == 1 && pt4 == 1) tóm lại nếu ko xài uint idmem1 thì xem trong sript cái nào của pt 1 thì xóa hết
bot 1 mình còn dễ hơn nữa cũng giống như trên tìm mấy cái như trên delete hết 1 2 3 4 thi` delete hết là xong
muon danh it nguoi` ne` minh` chi cho gio` minh` biet roi` don gian lam cho~ "chinh sua id member o day" o duoi neu danh 2 thi` ban dien 2 id thoi id nao` la` cua qs thi` dien vo cho~ do xong roi` xuong' cho~ ham` "Accepted Party " va ham "Request Party Accept From " dong` cuoi cung` cho~ (pt1 == 1 && pt2 == 1 && pt3 == 1 && pt4 == 1) thi` ban so sanh voi ham` "chinh sua id member o day" ban de idmem nao` trong' va` thu' tu cua o trong do so' may' thi` sua (pt1 == 1 && pt2 == 1 && pt3 == 1 && pt4 == 1) cho~ do' thay 1 = 0 VD /***** Chinh sua ID Member o day *****/ uint idmem1 = 2130481; uint idmem2 = 1190343; uint idmem3 = 0; uint idmem4_sena = 1189816; thi` ban sua la` (pt1 == 1 && pt2 == 1 && pt3 == 0 && pt4 == 1)