Truebot & linh tinh[Cấm chat nhảm]

Thảo luận trong 'Hộp lưu trữ' bắt đầu bởi micral, 13/12/05.

?

Có nên lập 1 subbox bot discussion không ?

Poll closed 24/1/06.
  1. Đồng ý , 1 topic sao bàn hết được !

    88.5%
  2. Thôi không cần , 1 topic là quá đủ !

    11.5%
Trạng thái chủ đề:
Không mở trả lời sau này.
  1. MGAngel

    MGAngel T.E.T.Я.I.S

    Tham gia ngày:
    13/5/05
    Bài viết:
    519
    Mở file server.ini ra mà xem, có hết trong đó. Cái này đã có nhiều người nói rồi, mai mốt bạn nên tìm kỹ lại trước khi hỏi về vấn đề gì. :hug:

     
  2. tintin17

    tintin17 Mr & Ms Pac-Man

    Tham gia ngày:
    14/1/03
    Bài viết:
    173
    Bác MG và MC cho hỏi tí, em biết id của cái thùng thằng TG là 50 vậy mà dùng ts.ClickOnNPC(50) nó chẳng thèm nói chuyện với mình (cái hộp vẫn mở mới ác chứ), oe oe. 2 bác test thử xem, cám ơn 2 bác nhìu nhìu
     
  3. zantedsuken

    zantedsuken Mario & Luigi

    Tham gia ngày:
    14/12/02
    Bài viết:
    872
    Nơi ở:
    Some Where I Belong
    4rum TB bị hack chưa lấy lại hoàn toàn chán quá
    Anh MC ơi cái Script lần trước share cho khó hiểu quá chắc hôm sau phải nhờ ông anh giảng cho em mới được
    Ah MGangel cho xin nick Y!M được ko ??
    Nếu ngại nhiều người biết thì add nick vit_coi22 được ko ??
     
  4. MGAngel

    MGAngel T.E.T.Я.I.S

    Tham gia ngày:
    13/5/05
    Bài viết:
    519
    Trời, BOT quest Trương Giác thì lick vào npcmapid là Trương Giác, chứ lick vào cái thùng làm giè. :o Capture packet, lấy lại cái packet lick Trương Giác đi. Nhưng cẩn thận, BOT Quest ko khéo ăn Noel trong tù giờ. ;;)
     
  5. hunter20001

    hunter20001 Youtube Master Race

    Tham gia ngày:
    19/10/05
    Bài viết:
    72
    bác MG cho em hỏi cái, cái đoạn code này của em ko bít bị gì mà sau turn thứ 2 nó phải đợi hơn 10s+ mới chịu oánh ::( ,có cách nào sửa ko bác
    Mã:
    function MyAttack(){
    ts.Character.MAXHP =80
    ts.Character.MAXSP = 100
    n = MonsterAlive()
    if(n>=5){
    m = SelectF1Target();
    sk = SkillID("Attack");
    ts.SendAttack( 
    ts.Character.Row 
    , ts.Character.Col
    , m.Row
    , m.Col
    , sk
    )
    }else if(n<4){
    m = findMonster();
    sk = SkillID("Flee");
    ts.SendAttack( 
    ts.Character.Row 
    , ts.Character.Col
    , m.Row
    , m.Col
    , sk
    )
    }
    }
     
  6. micral

    micral Donkey Kong

    Tham gia ngày:
    22/6/05
    Bài viết:
    352
    skill flee là tác động lên bản thân mà thử sửa :
    ts.SendAttack(
    ts.Character.Row
    , ts.Character.Col
    , m.Row
    , m.Col
    , sk
    )

    thành

    ts.SendAttack(
    ts.Character.Row
    , ts.Character.Col
    , ts.Character.Row
    , ts.Character.Col
    , sk
    )

    xem sao

    ngoài ra cái điều kiện if của bác chưa chặt chẽ vì nếu n==4 thì sao ? (4 ko >=5 cũng ko <4)
     
  7. MGAngel

    MGAngel T.E.T.Я.I.S

    Tham gia ngày:
    13/5/05
    Bài viết:
    519
    Đang set cho gà flee turn 2 àh? Có 1 cái vấn đề khi các bạn lập trình là dù bất cứ lập trình gì cũng vậy, có một cái phải luôn quan tâm là độ phức tạp của thuật toán, cũng như số bước, số phép tính mà nó phải giải quyết để cho ra kết quả. Cùng là có kết quả đó, nhưng thuật toán nào sử dụng ít phép tính hơn thì nó tối ưu hơn.
    Ví dụ trong trường hợp này, nếu bạn sử dụng phương pháp trên chỉ để set cho turn 1 đánh, turn 2 gà flee thì hơi thừa phép tính. Vì cái function MonsterAlive() và function findMonster() nằm trong common.js. Nên khi bạn gọi 2 function đó, nó phải truy xuất từ common.js ra là cái thứ nhất, cái thứ 2 là bản thân 2 function đó đã có mấy vòng lặp, tốn rất nhiều phép toán. Nên bạn sẽ trải qua rất nhiều bước mới có được cái kết quả là turn 1 đánh, turn 2 flee. Thay vì vậy, đơn giản hơn, bạn dùng 2 tham số phụ để đếm, ví dụ như:

    Mã:
    function MyAttack(){ 
    turn1++;
    if (turn1 == 1) {
    sk = SkillID("Attack"); 
    
    ts.SendAttack( 
    ts.Character.Row 
    , ts.Character.Col 
    , 0 
    , 2 
    , sk 
    ) 
    }  
    if (turn1 >= 2) {
    sk = SkillID("Flee"); 
    
    ts.SendAttack( 
    ts.Character.Row 
    , ts.Character.Col 
    , ts.Character.Row 
    , ts.Character.Col 
    , sk 
    ) 
    } 
    }
    
    
    function BattleStarted(){ 
    turn1 = 0;
    }
    Tham số turn1 dùng để đếm, và mỗi khi bắt đầu trận đấu mới, turn1 sẽ trở về 0. Như vậy bạn sẽ dùng rất ít phép tính, nhưng cũng ra kết quả như vậy. :hug: Tốc độ máy tính có hạn, script càng nhẹ, chạy càng nhanh và ít bị dis hơn. Bạn nên lưu ý vấn đề này khi viết script, và tìm cho mình thuật toán tốt nhất để giải quyết vấn đề. ::)
     
  8. KiemCun

    KiemCun Mr & Ms Pac-Man

    Tham gia ngày:
    28/1/04
    Bài viết:
    251
    Nhờ bác MG check dùm sao chẳng biết do script hay do pc mà đánh khoảng 30' thì có 1 em bị dis.
    Code chủ pt:
    Mã:
    var state = "";
    var ghost_count = 0;
    var DisconnectFlag = 0.9; 
    var isAutoRegenOK = 0;
    var pt_count=0; 
    var max_count=4;
    
    ts.Character.MAXSP = 100; 
    ts.Character.MAXHP = 420
    ts.CurrentPartner.MAXSP = 150; 
    ts.CurrentPartner.MAXHP = 490
    
    function InitBot()
    {
    }
    
    function AcceptedParty(playerid)
    {
        if(playerid == getPlayerId("a") || playerid == getPlayerId("b") || playerid == getPlayerId("c") || playerid == getPlayerId("d") || playerid == getPlayerId("e"))
    	{ 
    		ts.AcceptParty(playerid)
    		pt_count++;
        }
    	if(playerid == getPlayerId("b")) 
        { 
           ts.sena(playerid) //set Sena
        }
    	if (pt_count==max_count)
    	{
    		if(ts.Character.mapid==12301)
    		{
    			ts.delay(1000);
    			ts.Warp(1)
    			return
    		}
    		else if(ts.Character.mapid==12063)
    		{
    			ts.delay(1000);
    			ts.Warp(2)
    			return
    		}
    	}
    }
    
    function PartyStop( playerid )
    { 
    	if(playerid == getPlayerId("a") || playerid == getPlayerId("b") || playerid == getPlayerId("c") || playerid == getPlayerId("d") || playerid == getPlayerId("e"))
    	{ 
    		pt_count--;
    		debug("Dis by " + playerid + " dis",0xFF0000)
    		ts.Disconect(); 
    	}
    }
    
    
    function MyAttack()
    {
    	ts.delay(300);
    	n = MonsterAlive()
    	if(n>=3)
    	{
    		m = SelectF1Target();
    		sk = 10000;
    		ts.SendAttack(ts.Character.Row , ts.Character.Col, m.Row, m.Col, sk)
    	}
    	else if(n<3)
    	{
    		ts.delay(300);
    		m = findMonster();
    		sk = 10000;
    		ts.SendAttack(ts.Character.Row , ts.Character.Col, m.Row, m.Col	, sk)
    	}
    }
    
    function MyPartnerAttack()
    {
    	ts.delay(400);
    	n = MonsterAlive();
    	if(n>=3)
    	{
    		m = SelectF1Target();
    		sk = 10000;
    		ts.SendAttack(ts.CurrentPartner.Row, ts.CurrentPartner.Col, m.Row, m.Col, sk)
    	}
    	else if(n<3)
    	{
    		ts.delay(400);
    		m = findMonster();
    		sk = 10000;
    		ts.SendAttack(ts.CurrentPartner.Row, ts.CurrentPartner.Col, m.Row, m.Col, sk)
    	}
    }
    
    function Start()
    {
    	if(ts.Character.mapid==12301)
    	{
    		ts.delay(1000);
    		ts.Warp(1)
    		return
    	}
    	else if(ts.Character.mapid==12063)
    	{
    		ts.delay(1000);
    		ts.Warp(2)
    		return
    	}
    } 
    
    function Stop()
    {
    }
    
    function autoSendItem()
    { 
    	for(var i=1;i<=25;i++)
    	{ 
    		var oSlot = ts.MyItems(i) 
    		var oItem = ITEMS.Item(oSlot.itemid) 
    		var itemname = oItem.getName() 
    
    		if(oSlot.itemid == 0)
    		{ 
    			continue; 
    		} 
    
    		if(oSlot.itemid != 0 && oSlot.num >= 50)
    		{ 
    			ts.SendItemTo(getPlayerId("z"),oSlot.slot,oSlot.num);
    		} 
    	} 
    }
    
    
    function BattleStarted()
    {
    }
    
    function BattleStoped()
    {
                 autoSendItem();
    	CheckDisconnect();
    }
    
    function onEvilGod()
    {
    	debug("E V I L  G O D."+"["+ghost_count+"]",0x0000FF)
        msg = "Wrong.Add(\""+ts.LastQuestion+"\",\""+ts.LastResponseAnswer+"\")"
    }
    
    function onLuckyGod()
    {
    	debug("LUCKY G O D.",0xFF0000)
    	if(!QA.Exists(ts.LastQuestion))
    	{
    		ts.delay(6000);
    		QA.Add(ts.LastQuestion,ts.LastResponseAnswer)
    		msg = "QA.Add(\""+ts.LastQuestion+"\",\""+ts.LastResponseAnswer+"\")"
    	}
    	ts.delay(5000);
    }
    
    function OnTimer()
    { 
    }
    
    function FinishAnswerFuckGod()
    { 
    	if(ts.Character.mapid==12301)
    	{
    		debug("Cont",0xFF0000)
    		ts.delay(1000);
    		ts.Warp(1)
    		return
    	}
    	else if(ts.Character.mapid==12063)
    	{
    		ts.delay(1000);
    		ts.Warp(2)
    		return
    	}
    	if(ghost_count>=1)
    	{
    		debug("Dis by Ghost",0xFF0000)
    	    ts.Disconect();
    	}
    } 
    
    function CheckDisconnect()
    { 
    	if(ts.Character.HP < 20|| ts.CurrentPartner.HP < 20 )
    	{ 
    		debug("Dis by lost HP",0xFF0000)
    		ts.Disconect();
    	}
    	
    	if(ts.Character.SP < 12|| ts.CurrentPartner.SP < 15 )
    	{ 
    		debug("Dis by lost SP",0xFF0000)
    		ts.Disconect();
    	}
    }
    
    function NpcDialogMenu(DialogId)
    { 
    	if(DialogId==1)
    	{ 
    		ts.delay(500);
    		ts.SelectChoice(1); 
    		ts.SendEnd(); 
    	} 
    } 
    
    
    function NpcDialog(DialogId)
    { 
    	if(DialogId==14305)
    	{ 
    		ts.SendEnd();
    	}
    	if(DialogId==10021)
    	{
    		ts.SendEnd(); 
    	}
    } 
    
    function onAnswerWrong(q,a)
    {
    }
    
    function warpFinish()
    {
    	if(ts.Character.mapid==12301)
    	{
    		ts.delay(500);
    		ts.Warp(1)
    		return
    	}
    	else if(ts.Character.mapid==12063)
    	{
    		ts.delay(500);
    		ts.Warp(2)
    		return
    	}
    } 
    
    function OnChat(PlayerName , Msg)
    {
    } 
    
    InitBot()
    ClearLog("Wrong.js")
    
    Còn đây là code của mem:
    Mã:
    var state = "";
    var ghost_count = 0;
    var DisconnectFlag = 0.9; 
    var isAutoRegenOK = 0;
    
    ts.Character.MAXSP = 100; 
    ts.Character.MAXHP = 420
    ts.CurrentPartner.MAXSP = 150; 
    ts.CurrentPartner.MAXHP = 490
    
    function InitBot()
    {
    	ts.RequestParty(getPlayerId("a"))
    }
    
    function MyAttack()
    {
    	ts.delay(300);
    	n = MonsterAlive()
    	if(n>=3)
    	{
    		m = SelectF1Target();
    		sk = 12003;
    		ts.SendAttack(ts.Character.Row , ts.Character.Col, m.Row, m.Col, sk)
    	}
    	else if(n<3)
    	{
    		ts.delay(300);
    		m = findMonster();
    		sk = 12003;
    		ts.SendAttack(ts.Character.Row , ts.Character.Col, m.Row, m.Col	, sk)
    	}
    }
    
    
    
    function MyPartnerAttack()
    {
    	ts.delay(400);
    	n = MonsterAlive();
    	if(n>=3)
    	{
    		m = SelectF1Target();
    		sk = 10000;
    		ts.SendAttack(ts.CurrentPartner.Row, ts.CurrentPartner.Col, m.Row, m.Col, sk)
    	}
    	else if(n<3)
    	{
    		ts.delay(400);
    		m = findMonster();
    		sk = 10000;
    		ts.SendAttack(ts.CurrentPartner.Row, ts.CurrentPartner.Col, m.Row, m.Col, sk)
    	}
    }
    
    function autoSendItem()
    { 
    	for(var i=1;i<=25;i++)
    	{ 
    		var oSlot = ts.MyItems(i) 
    		var oItem = ITEMS.Item(oSlot.itemid) 
    		var itemname = oItem.getName() 
    
    		if(oSlot.itemid == 0)
    		{ 
    			continue; 
    		} 
    
    		if(itemid != 0 && oSlot.num >= 50)
    		{ 
    
    			ts.SendItemTo(getPlayerId("z"),oSlot.slot,oSlot.num);		
                              } 
    	} 
    }
    
    
    function BattleStarted()
    {
    	
    }
    
    function BattleStoped()
    {
                 autoSendItem();
    	CheckDisconnect();
    }
    
    function onEvilGod()
    {
    	debug("E V I L  G O D."+"["+ghost_count+"]",0x0000FF)
        msg = "Wrong.Add(\""+ts.LastQuestion+"\",\""+ts.LastResponseAnswer+"\")"
    }
    
    function onLuckyGod()
    {
    	debug("LUCKY G O D.",0xFF0000)
    	if(!QA.Exists(ts.LastQuestion))
    	{
    		ts.delay(6000);
    		QA.Add(ts.LastQuestion,ts.LastResponseAnswer)
    		msg = "QA.Add(\""+ts.LastQuestion+"\",\""+ts.LastResponseAnswer+"\")"
    	}
    	ts.delay(5000);
    }
    
    function OnTimer()
    { 
    }
    
    function FinishAnswerFuckGod()
    { 
    	if(ts.Character.mapid==12301)
    	{
    		debug("Cont",0xFF0000)
    		ts.delay(1000);
    		ts.Warp(1)
    		return
    	}
    	else if(ts.Character.mapid==12063)
    	{
    		ts.delay(1000);
    		ts.Warp(2)
    		return
    	}
    	if(ghost_count>=1)
    	{
    		debug("Dis by Ghost",0xFF0000)
    	    ts.Disconect();
    	}
    } 
    
    function CheckDisconnect()
    { 
    	if(ts.Character.HP < 20|| ts.CurrentPartner.HP < 20 )
    	{ 
    		debug("Dis by lost HP",0xFF0000)
    		ts.Disconect() 
    	} 
    }
    
    function onAnswerWrong(q,a)
    {
    } 
    function AcceptedParty(playerid)
    {
    }
    function OnChat(PlayerName , Msg)
    {
    }
    InitBot()
    ClearLog("Wrong.js")
    
     
  9. hunter20001

    hunter20001 Youtube Master Race

    Tham gia ngày:
    19/10/05
    Bài viết:
    72
    thx pác MC and MG nhiều, giờ con gà của em nó chạy lẹ rồi ko cần tốn time nữa :D
     
  10. anhchoem

    anhchoem Donkey Kong

    Tham gia ngày:
    18/4/05
    Bài viết:
    300
    Nơi ở:
    HCM
    Ko bít cái bài chỉ cách lấy NPCMapId đâu mất tiêu rùi :)
    Chưa kịp nhớ để làm ....
     
  11. MGAngel

    MGAngel T.E.T.Я.I.S

    Tham gia ngày:
    13/5/05
    Bài viết:
    519
    To KiemCun: script của mem:
    Mã:
    function FinishAnswerFuckGod()
    { 
    	if(ts.Character.mapid==12301)
    	{
    		debug("Cont",0xFF0000)
    		ts.delay(1000);
    		ts.Warp(1)
    		return
    	}
    	else if(ts.Character.mapid==12063)
    	{
    		ts.delay(1000);
    		ts.Warp(2)
    		return
    	}
    	if(ghost_count>=1)
    	{
    		debug("Dis by Ghost",0xFF0000)
    	    ts.Disconect();
    	}
    } 
    Cái này ko cần thiết, dễ gây dis lắm. Vì warp thì toàn bộ nằm ở con chủ party rồi, con mem đâu có cần warp hay làm gì đâu. Có cái này vô, trả lời BTQ xong, vẫn đang còn trong party mà con mem nó warp thì dis thôi. Với lại ngoài ra phần function MyAttack va function MyPartnerAttack, nên chỉ chính xác vị trí đánh và xài biến đếm turn cho nhẹ script, ko nên xài các function hỗ trợ như SelectF1Target() MonsterAlive() findMonster(). Chỉ trừ khi rơi vào trường hợp ko xử lý được thì mới cần phải nhờ đến nó. Nếu là hoàng cung DT thì turn1 vị trí đánh là (0,2) còn turn2 thì là (0,3). ::)
     
  12. Tani1301

    Tani1301 T.E.T.Я.I.S

    Tham gia ngày:
    24/9/05
    Bài viết:
    644
    Nơi ở:
    Iraq
    Hix sao ko tim được mapId bằng wpe nè ai chỉ với test ckick NPC cung thế luôn.Ai chỉ moi với Thanks nhìu.Ví dụ bot NPC mà nó có 1 mình ở trong map đó sao tui ko test click NPC được?
     
  13. Tani1301

    Tani1301 T.E.T.Я.I.S

    Tham gia ngày:
    24/9/05
    Bài viết:
    644
    Nơi ở:
    Iraq
    Còn đây là scrip bot quan ngân bình full.Ai xem có sai chỗ nào ko thì sửa hộ nha vẫn còn noob.Sẽ send scrip hoàng cung diệp thành full sau.
     

    Các file đính kèm:

  14. kidvn86

    kidvn86 Donkey Kong

    Tham gia ngày:
    30/9/05
    Bài viết:
    484
    chà chỉ sạch sẽ roài hỏi sao HCDT ko lag ta :-?
    lag roài đòi wa dnkv bot =)) =)) =)) =)) =)) =>treo cổ cả đám luôn
    chỉ bot thì chỉ treo máy thoai còn hcdt nên để tự nghien cứu chứ chỉ vậy luyện hcdt lag chịu sao nổi ta :-?
     
  15. tintin17

    tintin17 Mr & Ms Pac-Man

    Tham gia ngày:
    14/1/03
    Bài viết:
    173
    => Q đánh Trương Giác là click vào thùng mà, và id của Trương Giác thì em biết gòi, click vào thằng Trương Giác thì nó nói tiếng Ả rập, đâu có đánh
     
  16. Bizarrer

    Bizarrer Mr & Ms Pac-Man

    Tham gia ngày:
    26/11/05
    Bài viết:
    162
    cho hỏi Ts phil có dùng được TB ko vậy
    nếu dùng được thì Id của sever cao cao bên đó là gì vậy
    làm ơn chỉ tôi với coi
    cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước!cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước! cảm ơm trước!
     
  17. zZLinhYThaoZz

    zZLinhYThaoZz Youtube Master Race

    Tham gia ngày:
    13/10/05
    Bài viết:
    11
    truebot bi hong roi hay sao y em bot ca ngay ko sao bong dung bi disconect gio ko login dc connected close lien tuc anh mỉcal giup em voi dc ko
     
  18. KiemCun

    KiemCun Mr & Ms Pac-Man

    Tham gia ngày:
    28/1/04
    Bài viết:
    251
    @MGA: thx all. KC sẽ thử, hi vọng kô bị dis nữa. Lúc trước KC xài 5 cái TB và 1 cái alogin là khoảng 30' se có 1 acc bị dis hoặc bị treo. KC kô biết do code của KC hay do PC. Hiện tại KC đang xài 1 acc TB và 4 acc xcab thì Good lắm. Hix mà xcab sắp thu phí :(( nên hi vọng sẽ xài dc 5 acc TB ^:)^ kô là bb luôn.
     
  19. zZLinhYThaoZz

    zZLinhYThaoZz Youtube Master Race

    Tham gia ngày:
    13/10/05
    Bài viết:
    11
    tui cung xai giong ong ne` 1 acc TB va 4 acc xcab nhung gio acc TB ko dung dc nua roi ko hieu sao ah
     
  20. hunter20001

    hunter20001 Youtube Master Race

    Tham gia ngày:
    19/10/05
    Bài viết:
    72
    Cái truebot này bị lỗi thì phải, mình mà xài từ 2 cái truebot trở lên +gặp thằng già bắc tinh quân là dis
     
Trạng thái chủ đề:
Không mở trả lời sau này.

Chia sẻ trang này