thanks cảm ơn bác nhiều nha topic này là cứu tinh cho nhiều người đây ( trong đó có cả tôi ) bạn có thể post thêm cách tự trả lời BTQ và tự nhận pt được ko hình như ở đây ko có thì phải thanks
cho hoi co ai da xai js cua TTL roi chua , va` con chu pt no nhan dc pt ko ,sao minh lam thu ca tu` hom wa tối tói gio no van ko chieu pt Hay Ban TuanLingTTL pot luon cai tron ven ban dang xai` share cho tụi minh luon di dc ko cả cai TB ban dang xai no ^_^ xin cam on......
ai post dùm tui lên dùm cái chỗ bot thành tuyết !post đầy đủ cho tất cả luôn nha Mà nếu ko có đầy đủ thì post dùm lên cho 2 thằng 1x có Tôn trọng Cám ơn
Script thành tuyết đã post ở trang đầu đó. Là script đầu tiên mà mình nói là Lô Long đó ^^. Còn tự pt các bạn thử thêm hàm này ở trong member xem: function PlayerOnline( playerid ) { if(playerid == idchupt) { ts.RequestParty(playerid) } } Nếu dùng hàm này thì không cần quan tâm thứ tự vào nữa. Chủ pt vào sau cung sẽ tự party. Tôi đã thử và đã chạy ổn. Còn vấn đề tự động trả lời BTQ tôi đã nói suy nghĩ của tôi ở trang 2 để chúng ta cùng tìm hiểu. Đây là script cải tiến của Thái. Tôi nghĩ rất hay. Script họ cũng có rất nhiều hàm hay mà tui vẫn chưa thể hiểu hết được bởi mới học bot thời gian gần đây. Đặc biệt về TS thì tôi là rất noob ^^. Mới chơi à. Bạn nó gạ vào cày cùng thui nên hiểu biết về TS rất hạn chế. Nói chung là rất mong các bạn chỉ bảo thêm. Còn bạn sakana: thật sự tôi không hiểu trường hợp của bạn sao? Bạn có thể gửi tôi xem thử cái script của bạn để tui xem cho kịp được không? Bạn up lên megaupload rồi PM link cho tôi nhé
Thấy các bạn còn nhiều phân vân nên tôi xin post trọn vẹn script chủ pt của tôi cho các bạn tham khảo. Có gì chúng ta cùng trao đổi: include("common.js") var memturn = 0; var pnturn = 0; var state = ""; var hpFraction = 0.8; var pt_count = 0; var mapid1 = 12521; var mapid2 = 12013; var warpid1 = 5; var warpid2 = 1; function InitBot() { ViewState() CheckDisconnect() CheckHSP() } function MyAttack() { if (memturn == 0) { if (ts.Character.SP > 15) { sk = 12003; } else { sk = 10000; } ts.SendAttack( ts.Character.Row , ts.Character.Col , 0 , 3 , sk ) memturn = memturn + 1; } else { sk = 17001; ts.SendAttack( ts.Character.Row , ts.Character.Col , ts.Character.Row , ts.Character.Col , sk ) } } function MyPartnerAttack() { if (pnturn == 0) { sk = 17001; ts.SendAttack( ts.CurrentPartner.Row , ts.CurrentPartner.Col , ts.CurrentPartner.Row , ts.CurrentPartner.Col , sk ) pnturn = pnturn + 1; } else { sk = 10000; ts.SendAttack( ts.CurrentPartner.Row , ts.CurrentPartner.Col , 0 , 1 , sk ) } } function BattleStarted() { memturn = 0 pnturn = 0 } function BattleStoped() { ViewState() CheckDisconnect() CheckHSP() } function Start() { ts.sena(sena) //set Sena debug("Start at " + Time(),0xFF0000) WriteLog("Wrong.js","Start at " + Time()); moveOut() } function Stop() { ts.Walk(1390,250) } function OnTimer() { } function AcceptedParty(playerid) //tu dong party khi co yeu cau request tu member trong team { if( playerid == idmem || playerid == idmem || playerid == idmem || playerid == idmem ) //tru chu party nhe ^^ { ts.AcceptParty(playerid) pt_count++; } if (pt_count == 4) // du member moi bat dau dnah { Start(); } } function PartyStop( playerid ) //dis khi mat member { if( playerid == idmem || playerid == idmem || playerid == idmem || playerid == idmem || playerid == idmem ) { debug("Dis by " + playerid + "at" + Time(),0xFF0000) Stop() ts.Disconect(); } } function CheckHSP() { if (ts.Character.HP < (ts.Character.MAXHP * hpFraction)) { doEatHP(0, (ts.Character.MAXHP - ts.Character.HP)) } if (ts.Character.SP < (ts.Character.MAXSP - 30)) //Nham an ngay SP cho hop voi nhung thu roi ra tai CU Loc { doEatSP(0, (ts.Character.MAXSP - ts.Character.SP)) } if (ts.CurrentPartner.HP < (ts.CurrentPartner.MAXHP * hpFraction)) { doEatHP(ts.CurrentPartner.Order,(ts.CurrentPartner.MAXHP - ts.CurrentPartner.HP)) } if (ts.CurrentPartner.SP < (ts.CurrentPartner.MAXSP - 30)) { doEatSP(ts.CurrentPartner.Order,(ts.CurrentPartner.MAXSP - ts.CurrentPartner.SP)) } } function ViewState() { debug("************************************",0xFF0000) debug(" Warrior's HP : " + ts.CurrentPartner.HP,0xFF0000) debug(" Character's HP : " + ts.Character.HP,0xFF0000) debug("************************************",0xFF0000) } function CheckDisconnect() { if(ts.Character.HP < (0.2 * ts.Character.MAXHP) || ts.CurrentPartner.HP < (0.2 * ts.CurrentPartner.MAXHP)) { debug(" Dis by low on HP at " + Time(),0xFF0000) WriteLog("Wrong.js","Dis by low on HP at " + Time()); ts.Disconect(); } } function WarpLink( map1 ,warpid1 , map2 ,warpid2) // Su dung warpLink cua Micral rat hay, it bi dis { if(ts.Character.mapid == map1) { ts.Warp(warpid1) return } else if(ts.Character.mapid == map2) { ts.Warp(warpid2) return } } function FinishAnswerFuckGod() //hix Nham muc tieu tra loi BTQ xong van co the tiep tuc danh ^^ { moveOut() } function moveOut() //Ra vao dong { if(ts.Character.mapid == mapid1) { WarpLink( mapid2 ,warpid2 , mapid1 ,warpid1); } else if(ts.Character.mapid == mapid2) { ts.Walk(1522,175); WarpLink( mapid2 ,warpid2 , mapid1 ,warpid1); } } function warpFinish() //Ham goi khi ket thuc warp, giup tu dong ra vao dong { moveOut() } function PlayerAppearInMap( playerid , x , y ) //Cha`, cai nay bat chuoc cac dan anh di truoc thoi, chu chua thay dc cong dung no { if (playerid < 500 && playerid > 101) { WriteLog("save.txt",Time() + "GameMaster : " + getPlayerName(playerid) + " ID: " + playerid) debug("Anh em oi cong An toi kia!!!" + Time(),0x00ff00); ts.Disconect(); } } InitBot() /// /*----------------------------------------------------*/ Còn đây là member đã có tự động party: include("common.js") var memturn = 0; var pnturn = 0; var state = ""; var hpFraction = 0.8; function InitBot() { ts.RequestParty(id chu pt) // De xin party voi chu party khi moi log vo ViewState() CheckHSP() } function MyAttack() { if (memturn == 0) { if (ts.Character.SP > 15) { sk = 12003; } else { sk = 10000; } ts.SendAttack( ts.Character.Row , ts.Character.Col , 0 , 3 , sk ) memturn = memturn + 1; } else { sk = 17001; ts.SendAttack( ts.Character.Row , ts.Character.Col , ts.Character.Row , ts.Character.Col , sk ) } } function MyPartnerAttack() { if (pnturn == 0) { if (ts.CurrentPartner.SP > 15) { sk = 12003; } else { sk = 10000; } ts.SendAttack( ts.CurrentPartner.Row , ts.CurrentPartner.Col , 1 , 2 , sk ) pnturn = pnturn + 1; } else { sk = 17001; ts.SendAttack( ts.CurrentPartner.Row , ts.CurrentPartner.Col , ts.CurrentPartner.Row , ts.CurrentPartner.Col , sk ) } } function BattleStarted() { memturn = 0 pnturn = 0 } function BattleStoped() { ViewState() CheckHSP() } function Start() { debug("Re pt...",0) ts.RequestParty(id chu pt) // De party bang tay khi an F3 } function Stop() { } function PartyStop( playerid ) // tu dong dis khi co mem roi khoi doi { if( playerid == idmem || playerid == idmem || playerid == idmem || playerid == idmem || playerid == idmem ) { debug("Dis by " + playerid + "at" + Time(),0xFF0000) Stop() ts.Disconect(); } } function CheckHSP() { if (ts.Character.HP < (ts.Character.MAXHP * hpFraction)) { doEatHP(0, (ts.Character.MAXHP - ts.Character.HP)) } if (ts.Character.SP < (ts.Character.MAXSP - 30)) { doEatSP(0, (ts.Character.MAXSP - ts.Character.SP)) } if (ts.CurrentPartner.HP < (ts.CurrentPartner.MAXHP * hpFraction)) { doEatHP(ts.CurrentPartner.Order,(ts.CurrentPartner.MAXHP - ts.CurrentPartner.HP)) } if (ts.CurrentPartner.SP < (ts.CurrentPartner.MAXSP - 30)) { doEatSP(ts.CurrentPartner.Order,(ts.CurrentPartner.MAXSP - ts.CurrentPartner.SP)) } } function OnTimer() { } function ViewState() { debug("************************************" , 0xFF0000) debug(" Warrior's HP : " + ts.CurrentPartner.HP , 0xFF0000) debug(" Character's HP : " + ts.Character.HP, 0xFF0000) debug("************************************", 0xFF0000) } function PlayerOnline( playerid ) // tu dong party khi log vao { if(playerid == idchupt) { ts.RequestParty(playerid) } } InitBot() /*---------------------------------------------------------*/ Đây là common.js tham khảo bản mới nhất của TB Thái và có sửa đổi cho đơn giản hơn: /****************************************** Common Function Script (Truebot) ******************************************/ var QA = new ActiveXObject("Scripting.Dictionary"); var Wrong = new ActiveXObject("Scripting.Dictionary"); Chat.obj.backColor = 0x000000 function ChatClear(){ Chat.obj.text = ""; } function DisplayClear(){ Display.text = ""; } var ShowTime; function Time() { var time = new Date(); h = time.getHours(); if (h < 10) { h = "0" + h } m = time.getMinutes(); if (m < 10) { m = "0" + m } s = time.getSeconds(); if (s < 10) { s = "0" + s } return ShowTime ="[" + h + ":" + m + ":" + s + "]"; } function doEatHP(order,difHp) { for(var i = 1;i<= 20 ;i++) { var oSlot = ts.MyItems.Item(i) var oItem = ITEMS.Item(oSlot.itemid) if (oSlot.itemid == 0 || oSlot.itemid == 46107) { continue; } if(oItem.isHPItem()) { if (difHp <= oItem.itemvalue) { ts.EatItem(i, 1 ,order); debug( " Eat " +" HP + "+ oItem.itemvalue+" at slot"+i+" amount 1 ",0xC08008 ) } else { var eatHpAmt = (difHp - (difHp % oItem.itemvalue)) / oItem.itemvalue if (eatHpAmt > oSlot.num) { eatHpAmt = oSlot.num; } ts.EatItem(i,eatHpAmt,order) debug( " Eat " +" HP + "+oItem.itemvalue+" at slot"+i+" amount "+eatHpAmt ,0xC08008 ) difHp = difHp - eatHpAmt * oItem.itemvalue } } } } function doEatSP(order,difSp) { for(var i = 1;i<= 20 ;i++) { var oSlot = ts.MyItems.Item(i) var oItem = ITEMS.Item(oSlot.itemid) if (oSlot.itemid == 0 || oSlot.itemid == 46107) { continue; } if(oItem.isSPItem()) { if (difSp <= oItem.itemvalue) { ts.EatItem(i, 1 ,order); debug( " Eat " +" SP + "+ oItem.itemvalue+" at slot"+i+" amount 1 ",0xC08008 ) } else { var eatSpAmt = (difSp - (difSp % oItem.itemvalue)) / oItem.itemvalue if (eatSpAmt > oSlot.num) { eatSpAmt = oSlot.num; } ts.EatItem(i,eatSpAmt,order) debug("Eat " + " SP+" + oItem.itemvalue + " at slot " + i + "amount "+eatSpAmt ,0xC08008 ) difSp = difSp - eatSpAmt * oItem.itemvalue } } } } // WriteLog("c:\\log.txt",ts.Character.Texp); function WriteLog(Fname,data){ var ForAppending = 8; var fso = new ActiveXObject("Scripting.FileSystemObject"); var a = fso.OpenTextFile(Fname, ForAppending, false); a.WriteLine(data); a.Close(); } function ClearLog(Fname){ var ForWriting = 2; var fso = new ActiveXObject("Scripting.FileSystemObject"); var a = fso.OpenTextFile(Fname, ForWriting, false); a.WriteLine(""); a.Close(); } function get_random(min,max) { var ranNum= min + Math.round(Math.random()*(max-min)); return ranNum; } var ans var ans_index = get_random(1,4); var known = false function doRecvQuestion(){ tmp = ts.LastQuestion; tmp = tmp.replace("=?",""); ans = "" + eval(tmp); ans_index = ts.LastAnswers.Item(ans); } function ResponseAnswer() { debug("ResponseAnswer",0) ts.Answer(ans_index); } /*----------------------------------------------------*/ Đó là tất cả những gì tôi đã biết, trọn vẹn, toàn bộ những gì tôi đang sử dụng. Còn về TB 3 của Thái thì đúng như bạn Mip đã nói. Nó thiếu đi 1 byte so với của VN. Bản của bác Micral rất tuyệt ^^(thanks bác Micral, bác cũng là người em học hỏi được rất nhiều về TB - em coi bác như người thấy đầu tiên dạy em bot ^^)
Trùi thừa quá nhiều cái không cần thiết. Thà tự viết còn hơn. Nhưng dù sao cũng thay mặt các bạn không biết viết cảm ơn.
Bạn up cái TBver3 rùi chỉ mình Log = WPE dc ko ( share full nha , cả mấy file common.js ...... nói chung cái Folder bạn đang sài đó) Mình có cái host free bạn sài tạm, khỏi dùng MegaUpload: www.fsphost.com Acc: jet007sub1 pass: 111111 Thx :X :X :X
ban TuanLinh TTL thong cam cho minh pot nhu vay nha , upload lau wa :P chu PT: include("common.js") var memturn = 0; var pnturn == 0; var state = ""; var hpFraction = 0.8; var pt_count = 0; var mapid1 = 12521; var mapid2 = 12013; var warpid1 = 5; var warpid2 = 1; function InitBot() { ViewState() CheckHSP() } function MyAttack() { if (memturn == 0) { ts.delay(100); sk = 10000; ts.SendAttack( ts.Character.Row , ts.Character.Col ,0 , 2 , sk ) memturn = memturn + 1; } else { ts.delay(100); sk = 17001; ts.SendAttack( ts.Character.Row , ts.Character.Col , ts.Character.Row , ts.Character.Col , sk ) } } function MyPartnerAttack() { if (pnturn == 0) { sk = 12003; ts.SendAttack( ts.Character.Row , ts.Character.Col ,0 , 2 , sk ) pnturn = pnturn + 1; } else { sk = 10000; ts.SendAttack( ts.CurrentPartner.Row , ts.CurrentPartner.Col , 0 , 1 , sk ) } } function BattleStarted() { memturn = 0 pnturn == 0 } function BattleStoped() { ViewState() ts.delay(100); moveOut() } function Start() { ts.sena(1565519) //set Sena debug("Start at " + Time(),0xFF0000) WriteLog("Wrong.js","Start at " + Time()); moveOut() } var ShowTime; function Time() { var time = new Date(); h = time.getHours(); if (h < 10) { h = "0" + h } m = time.getMinutes(); if (m < 10) { m = "0" + m } s = time.getSeconds(); if (s < 10) { s = "0" + s } return ShowTime ="[" + h + ":" + m + ":" + s + "]"; } function Stop() { ts.Walk(1390,250) } function OnTimer() { } function AcceptedParty(playerid) { if( playerid == 1565519 || playerid == 865407 || playerid == 772596 || playerid == 2015105) { ts.AcceptParty(playerid) pt_count++; } if (pt_count == 4) { Start(); } } function PartyStop( playerid ) { if( playerid == 954815 || playerid == 1565519 || playerid == 865407 || playerid == 772596 || playerid == 2015105 ) { debug("Dis by " + playerid + " at " + Time(),0xFF0000) WriteLog("Wrong.js","Dis by " + playerid + " at " + Time()); ts.Disconect(); } } function ViewState() { debug("************************************",0xFF0000) debug(" Warrior's HP : " + ts.CurrentPartner.HP,0xFF0000) debug(" Character's HP : " + ts.Character.HP,0xFF0000) debug("************************************",0xFF0000) } function CheckDisconnect() { if(ts.Character.HP < (0.2 * ts.Character.MAXHP) || ts.CurrentPartner.HP < (0.2 * ts.CurrentPartner.MAXHP)) { debug(" Dis by low on HP at " + Time(),0xFF0000) WriteLog("Wrong.js","Dis by low on HP at " + Time()); ts.Disconect(); } } function CheckHSP() { if (ts.Character.HP < (ts.Character.MAXHP * hpFraction)) { doEatHP(0, (ts.Character.MAXHP - ts.Character.HP)) } if (ts.Character.SP < (ts.Character.MAXSP - 30)) { doEatSP(0, (ts.Character.MAXSP - ts.Character.SP)) } if (ts.CurrentPartner.HP < (ts.CurrentPartner.MAXHP * hpFraction)) { doEatHP(ts.CurrentPartner.Order,(ts.CurrentPartner .MAXHP - ts.CurrentPartner.HP)) } if (ts.CurrentPartner.SP < (ts.CurrentPartner.MAXSP - 30)) { doEatSP(ts.CurrentPartner.Order,(ts.CurrentPartner .MAXSP - ts.CurrentPartner.SP)) } } function moveOut() { if(ts.Character.mapid == mapid1) { ts.delay(1); ts.warp(warpid2) return ts.Walk(1522,175); ts.delay(1000); ts.warp(warpid1) return } else if(ts.Character.mapid == mapid2) { ts.Walk(1522,175); ts.delay(1000); ts.warp(warpid1) return } } function warpFinish() { } function PlayerAppearInMap( playerid , x , y ) { if (playerid < 500 && playerid > 101) { WriteLog("save.txt",Time() + "GameMaster : " + getPlayerName(playerid) + " ID: " + playerid) debug("Anh em oi cong An toi kia!!!" + Time(),0x00ff00); ts.Disconect(); } } InitBot() Mem : include("common.js") var memturn = 0; var state = ""; var hpFraction = 0.8; function InitBot() { ts.RequestParty(954815) ViewState() CheckDisconnect() CheckHSP() } function MyAttack() { if (memturn == 0) { ts.delay(100); sk = 17001; ts.SendAttack( ts.Character.Row , ts.Character.Col , 0 , 3 , sk ) memturn = memturn + 1; } else { ts.delay(100); sk = 17001; ts.SendAttack( ts.Character.Row , ts.Character.Col , ts.Character.Row , ts.Character.Col , sk ) } } function MyPartnerAttack() { sk = 17001; ts.SendAttack( ts.CurrentPartner.Row , ts.CurrentPartner.Col , ts.CurrentPartner.Row , ts.CurrentPartner.Col , sk ) } function BattleStarted() { memturn = 0 } function BattleStoped() { ViewState() CheckDisconnect() CheckHSP() } function Start() { debug("Re pt...",0) ts.RequestParty(954815) } function Stop() { } function OnTimer() { } function PartyStop( playerid ) { if( playerid == 954815 || playerid == 1565519 || playerid == 865407 || playerid == 772596 || playerid == 2015105 ) { debug("Dis by " + playerid + " at " + Time(),0xFF0000) WriteLog("Wrong.js","Dis by " + playerid + " at " + Time()); ts.Disconect(); } } var ShowTime; function Time() { var time = new Date(); h = time.getHours(); if (h < 10) { h = "0" + h } m = time.getMinutes(); if (m < 10) { m = "0" + m } s = time.getSeconds(); if (s < 10) { s = "0" + s } return ShowTime ="[" + h + ":" + m + ":" + s + "]"; } function CheckHSP() { if (ts.Character.HP < (ts.Character.MAXHP * hpFraction)) { doEatHP(0, (ts.Character.MAXHP - ts.Character.HP)) } if (ts.Character.SP < (ts.Character.MAXSP - 30)) { doEatSP(0, (ts.Character.MAXSP - ts.Character.SP)) } if (ts.CurrentPartner.HP < (ts.CurrentPartner.MAXHP * hpFraction)) { doEatHP(ts.CurrentPartner.Order,(ts.CurrentPartner .MAXHP - ts.CurrentPartner.HP)) } if (ts.CurrentPartner.SP < (ts.CurrentPartner.MAXSP - 30)) { doEatSP(ts.CurrentPartner.Order,(ts.CurrentPartner .MAXSP - ts.CurrentPartner.SP)) } } function ViewState() { debug("************************************",0xFF0000) debug(" Warrior's HP : " + ts.CurrentPartner.HP,0xFF0000) debug(" Character's HP : " + ts.Character.HP,0xFF0000) debug("************************************",0xFF0000) } function CheckDisconnect() { if(ts.Character.HP < (0.2 * ts.Character.MAXHP) || ts.CurrentPartner.HP < (0.2 * ts.CurrentPartner.MAXHP)) { debug(" Dis by low on HP at " + Time(),0xFF0000) WriteLog("Wrong.js","Dis by low on HP at " + Time()); ts.Disconect(); } } InitBot() ban TTL coi gium minh nha! minh cung copy cai cua ban no :) minh sua id player thoi con sk thi chua đụng toi'
Đã PM với bạn. Cơ bản mình cũng không hiểu nổi bạn lỗi chỗ nào mà không pt được. Tuy nhiên, bạn có thể tham khảo script mình đang dùng ở trang bên. Mình có thểm tự động party mà không cần thứ tự vào rồi. Script này mình dùng thời gian đầu khi hay bị dis để bug xem tại sao bị dis. DO vậy bạn có thể rất nhiều delay hay frm.cdelay. Đó là mình muốn xem xem có phải do vấn đề warp ra vào gate không thôi. Bạn thử xem và thử lại nhé. Thân và chuc bạn may mắn! @all: Mình kết thúc topic tại đây. Đây là tất cả gì mình có và mình nghĩ đã đủ. Thêm nưa mình cũng nhận được 1 lời khuyên rất chân thành của 1 bạn tốt về vấn đề này. Vì vậy mình xin phép được ngừng tại đây. Cảm ơn các bạn đã theo dõi!
ac. co' can ac vay ko share cai TB ban dang dung` di lam j` ma choi cho anh em mung` roi` quay lung ra di voi vang vay. lai giong ong MG ah`
Có cách nào cho cưỡi ngựa được ko TL , cứ nhấn vào "riding horse " là văng àh . 30 cục chả 30 cục chả 30 cục chả 30 cục chả
Bạn nào có script Trương Giác có thể share cho mình với được không, đang cần lắm, thanks các bạn nhiều
function PlayerAppearInMap( playerid , x , y ) { if (playerid < 500 && playerid > 101) { WriteLog("save.txt",Time() + "GameMaster : " + getPlayerName(playerid) + " ID: " + playerid) debug("Anh em oi cong An toi kia!!!" + Time(),0x00ff00); ts.Disconect(); } } Cái này không hoạt động à, vì sao lại thế ??
Xin cho hỏi 1 câu là các Đoạn script của chu pt va mem viết chung 1 script hay viết riêng và của con gà nữa ? mong ai đó biết giải thích dùm em noob lắm , em cảm ơn nhìu !