Reklama
Strona 22 z 33 PierwszaPierwsza ... 12202122232432 ... OstatniaOstatnia
Pokazuje wyniki od 316 do 330 z 486

Temat: [Poradnik] Jak napisać własne macro do Tibii

  1. #316

    Data rejestracji
    2010
    Posty
    18
    Siła reputacji
    0

    Domyślny

    Cytuj Maskot napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    @Yaboomaster
    To moze teraz cos o TibiaApi?
    Dla mnie TibiaApi to jeden z głupszych pomysłów na jaki wpaść mogli ludzie z tpforums.
    Teraz ludzie zamiast reversować tibie, uczyć się obsługi debugger a przede wszystkim starać się zrozumieć po prostu korzystają z gotowego api, które bardzo często nie działa.

  2. #317
    Avixu

    Domyślny

    Dla leniwych:
    code.google.com/p/tibiaapi/source/browse/trunk/tibiaapi

    @Yaboo
    Ale dobrze opisałem to z battlelistą? ;ddddd

  3. #318

    Data rejestracji
    2010
    Posty
    18
    Siła reputacji
    0

    Domyślny

    Cytuj Avixu napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    @Yaboo
    Ale dobrze opisałem to z battlelistą? ;ddddd
    Nawet dobrze, tyle tylko, że to klocki to nic innego jak pola w strukturze ^^
    Ich różne rozmiary zależą od typów danych jakie przechowują.
    Przykładowo ID to 4 bajty, czyli integer.
    Nick to 32 bajty ponieważ tyle liter może mieć nazwa naszej postaci a każda litera to 1 bajt.
    I z takich pól składa się struktura, a z 250 takich struktur ułożonych w tablicę składa się Battle List.
    Ostatnio zmieniony przez Yaboomaster : 13-01-2010, 00:00

  4. Reklama
  5. #319
    Lenson

    Domyślny

    no wlasnie o to chodzi , nie chcialem isc na latwizne i czytac all z tibia.api , tylko po prostu wiedziec jak wyciagnac dane informacje , tyle pisalem a w dalszym ciagu nie uzyskalem jasnej odpowiedzi :/

    moje pytania to :
    1. jak wyciagnac adres blank runy , albo po prostu jak odmierzyc odleglosc , i od czego
    2. w jaki sposob to skonwertowac , aby moc napisac z tego procedure ktora bedzie zakladala mi blank rune na miejsce reki.

    zrobilem to co miales w poradniku (wpisujesz liczbe many i czar a on wpisuje ci to w grze) ale nie rozumiem tej procedury , jak skonwertowac juz wyciagniete te adresy z tej battle listy.

    z tego co zrozumialem z tych wszystkich waszych wypowiedzi to to:
    ze:
    1. w tibi jest 168 pozycji na battle liscie , (nie wiem jakie to sa te elementy)
    2. od kazdego elementu na tej battle liscie sa odmierzane odleglosci do odpowiednich itemow czy rzeczy czyt. np outfit chodzeni itp (nie wiem jakie odleglosci i od czego odejmowac , i w gruncie rzeczy jak przeszukac cala battle liste)

  6. #320

    Data rejestracji
    2007
    Posty
    4
    Siła reputacji
    0

    Domyślny

    Cytuj Lenson napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    moje pytania to :
    1. jak wyciagnac adres blank runy , albo po prostu jak odmierzyc odleglosc , i od czego
    2. w jaki sposob to skonwertowac , aby moc napisac z tego procedure ktora bedzie zakladala mi blank rune na miejsce reki.
    Cheat Engine lub tsearch, winhex,
    praktycznie kazdy program, ktory potrafi otworzyc dostep do pamieci uruchomionego procesu,
    znalezienie tych informacji, to juz bardziej kolorowa sprawa

    ps jest chyba 250~ creatures na battleliscie po 'ostatnich' updateach

  7. #321
    Avixu

    Domyślny

    Cytuj Lenson napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    no wlasnie o to chodzi , nie chcialem isc na latwizne i czytac all z tibia.api , tylko po prostu wiedziec jak wyciagnac dane informacje , tyle pisalem a w dalszym ciagu nie uzyskalem jasnej odpowiedzi :/

    moje pytania to :
    1. jak wyciagnac adres blank runy , albo po prostu jak odmierzyc odleglosc , i od czego
    2. w jaki sposob to skonwertowac , aby moc napisac z tego procedure ktora bedzie zakladala mi blank rune na miejsce reki.

    zrobilem to co miales w poradniku (wpisujesz liczbe many i czar a on wpisuje ci to w grze) ale nie rozumiem tej procedury , jak skonwertowac juz wyciagniete te adresy z tej battle listy.

    z tego co zrozumialem z tych wszystkich waszych wypowiedzi to to:
    ze:
    1. w tibi jest 168 pozycji na battle liscie , (nie wiem jakie to sa te elementy)
    2. od kazdego elementu na tej battle liscie sa odmierzane odleglosci do odpowiednich itemow czy rzeczy czyt. np outfit chodzeni itp (nie wiem jakie odleglosci i od czego odejmowac , i w gruncie rzeczy jak przeszukac cala battle liste)
    Rzeczy nie. Np. armor masz zapisany pod konkretnym adresem. I on się nie zmienia niezależnie od ilości potworów na battleliście itp (tylko po update ale to wszystkie adresy się zmieniają)

    Jeśli blankę masz w prawej ręce wtedy będzie to adres prawej ręki. Kiedy zamienisz blankę z np. crimson swordem wtedy pod tym adresem będzie crimson sword (jego wartość się zmieni). Adres będzie ten sam. Jeśli chodzi Ci o runemakera to musisz bawić się w pakiety. Sorry ale tego jeszcze sam nie pojąłem xdd

    @Yaboo
    Aby wysłać dowolny pakiet, trzeba użyć packet.dll? Czy jest to po prostu gotowa biblioteka zawierająca gotowe funkcje?
    Update plx?

    @top
    Muj boot ma jusz lajtchaka i adon czendżera!!11oneone
    Ostatnio zmieniony przez Avixu : 13-01-2010, 07:03

  8. Reklama
  9. #322

    Data rejestracji
    2010
    Posty
    18
    Siła reputacji
    0

    Domyślny

    Na wysyłanie pakietów jest wiele sposób.
    Oto kilka z nich

    Stworzenie proxy
    Wykorzystanie packet.dll (dość prymitywna metoda, chociaż do napisania tej biblioteki wymagana była niemała wiedza :P).
    Dll Injection - skorzystanie z wewnętrznej funkcji Tibii, która wysyła pakiety
    CreteRemotThread - zdalny wątek, który wykorzysta wewnętrzną funkcję Tibii do wysyłania pakietów
    Hook na API

    Moim zdaniem wysyłanie pakietów przy wykorzystaniu wewnętrznych funkcji klienta, jest najlepsze. Dlaczego?
    Po pierwsze nie trzeba się męczyć z kodowaniem.
    Po drugie, kiedyś istniała teoria, że puste bajty, które uzupełniały pakiet aby mógł być podzielny przez 8 (wymagane przez xtea), nie są do końca losowe.
    Niedawno przyjrzałem się bliżej funkcji tworzącej pakiety i faktycznie okazało się, że te bajty nie są do końca takie losowe jak się wszystkim przedtem wydawało (czy jest to ten ich cały antyban?:>).
    Jednak do skorzystania z tej funkcji do wysyłania pakietów trzeba znać chociaż podstawy asemblera i mieć jakąkolwiek wiedzę na temat procesów w Windowsie ;P

  10. #323
    Avixu

    Domyślny

    Yyy. A mógłbyś być tak uprzejmy i opisać resztę sposobów? :>

  11. #324

    Data rejestracji
    2010
    Posty
    18
    Siła reputacji
    0

    Domyślny

    Cytuj Avixu napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    Yyy. A mógłbyś być tak uprzejmy i opisać resztę sposobów? :>
    Pewnie bym mógł ale większą satysfakcją jest dojście to tego samemu ;]
    Napisałeś kiedyś jakikolwiek program, który korzysta z socketów?
    Wiesz cokolwiek na temat dll injection i o zakładaniu hooków?
    Jeżeli nie to lepiej najpierw o tym trochę poczytaj, bo nie trudno jest zrobić program, którego się nie rozumie w oparciu o czyjeś źródło, trudniej jest coś takiego samemu napisać ;P
    Ostatnio zmieniony przez Yaboomaster : 13-01-2010, 14:20

  12. Reklama
  13. #325
    Lenson

    Domyślny

    Cytuj Avixu napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    Rzeczy nie. Np. armor masz zapisany pod konkretnym adresem. I on się nie zmienia niezależnie od ilości potworów na battleliście itp (tylko po update ale to wszystkie adresy się zmieniają)

    Jeśli blankę masz w prawej ręce wtedy będzie to adres prawej ręki. Kiedy zamienisz blankę z np. crimson swordem wtedy pod tym adresem będzie crimson sword (jego wartość się zmieni). Adres będzie ten sam. Jeśli chodzi Ci o runemakera to musisz bawić się w pakiety. Sorry ale tego jeszcze sam nie pojąłem xdd

    @Yaboo
    Aby wysłać dowolny pakiet, trzeba użyć packet.dll? Czy jest to po prostu gotowa biblioteka zawierająca gotowe funkcje?
    Update plx?

    @top
    Muj boot ma jusz lajtchaka i adon czendżera!!11oneone
    no ale jak pozyckac wlasnie numer TEJ REKI z chate engingn , jaki numer mam wpisac w tych kryteriach!!! chodzi mi tylko o to jak wyciagac poszczegolne adresy i ewentualnie odleglosci od odpowiedniej battle listy , do reszty dojde sam , tylko nie wiem co wpisac w kryteriach wyszukiwania jezeli chcem np odnalezc nick postaci , adres armora czy tym podobnych rzeczy , kiedy np exp mane hp sie latwo znajduje bo jest ona w integer , i wiadomo ze wystarczy liczbe wpisac

  14. #326
    Avatar Ar'buz
    Data rejestracji
    2007
    Położenie
    51*06N, 17*02E Ranga: Zasłóżony
    Posty
    245
    Siła reputacji
    19

    Domyślny

    Cytuj Lenson napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    no ale jak pozyckac wlasnie numer TEJ REKI z chate engingn , jaki numer mam wpisac w tych kryteriach!!! chodzi mi tylko o to jak wyciagac poszczegolne adresy i ewentualnie odleglosci od odpowiedniej battle listy , do reszty dojde sam , tylko nie wiem co wpisac w kryteriach wyszukiwania jezeli chcem np odnalezc nick postaci , adres armora czy tym podobnych rzeczy , kiedy np exp mane hp sie latwo znajduje bo jest ona w integer , i wiadomo ze wystarczy liczbe wpisac
    Wiedząc, że ID 1 gp jest równy = 3031, używając funkcji z Cheat Engine:
    -Extract Value,
    -Changed Value,

    jesteś w stanie w 3-4 ruchach znaleźć Arrow Slota :) Teraz wymyśl jak to zrobić, a jak nie dasz rady, to może w przyszłości pojawi się spoil ;d (ale to już by było przykre...)
    Ostatnio zmieniony przez Ar'buz : 13-01-2010, 17:20

  15. #327
    Avixu

    Domyślny

    Cytuj Yaboomaster napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    Pewnie bym mógł ale większą satysfakcją jest dojście to tego samemu ;]
    Napisałeś kiedyś jakikolwiek program, który korzysta z socketów?
    Wiesz cokolwiek na temat dll injection i o zakładaniu hooków?
    Jeżeli nie to lepiej najpierw o tym trochę poczytaj, bo nie trudno jest zrobić program, którego się nie rozumie w oparciu o czyjeś źródło, trudniej jest coś takiego samemu napisać ;P
    :(
    Przyznam, nie robiłem nic na socketach, a najlepsze jest to, że nie do końca wiem co to w ogóle jest XD To samo z DLL Injection i hookach...

  16. Reklama
  17. #328

    Data rejestracji
    2010
    Posty
    18
    Siła reputacji
    0

    Domyślny

    Cytuj Avixu napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    :(
    Przyznam, nie robiłem nic na socketach, a najlepsze jest to, że nie do końca wiem co to w ogóle jest XD To samo z DLL Injection i hookach...
    Właśnie dlatego nie będę tu pisał spoilów na ten temat. Nie można napisać bota, który wysyła pakiety nie wiedzą na jakiej zasadzie to działa :P

  18. #329
    Lenson

    Domyślny

    Cytuj Ar'buz napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    Wiedząc, że ID 1 gp jest równy = 3031, używając funkcji z Cheat Engine:
    -Extract Value,
    -Changed Value,

    jesteś w stanie w 3-4 ruchach znaleźć Arrow Slota :) Teraz wymyśl jak to zrobić, a jak nie dasz rady, to może w przyszłości pojawi się spoil ;d (ale to już by było przykre...)
    a jak pozyskac wlasnie ID gp ?

    edit:
    okej gp jeszcze wyciagne bo tam tez jest numer :)
    a jak wyciagnac id blanki ?


    edit , dobra wiem , wiem juz w sumie (tak mi sie wydaje) jak pozyskac numer np blank runy czy plecaka , teraz tylko powiedzcie mi

    edit 2:
    za jednym zamachem od razu powiedz jak wyciagnac id itemy ktory nie ma numeracji , takiej jak np gold czy inne rzeczy ktore mozna polaczyc ze soba, chodzi mi tu jak wyciagnac numer blank runy

    i od razu opisz jak pozyskac potem za pomoca gp numer strzal

    edit 3: no i mam problem :/ bp np tam jak daje "memory view" i w kryteriach wpisuje np wand of inferno ,to mi go znajduje , tylko np skad mam wiedziec jak ten komentarz ciagnie sie przez 3 nastepne kody , skad mam wiedziec ktory jest prawidlowy ? , wkleic linka nie moge zeby wam powiedziec o co dokladnie mi chodzi ;/ tak ps , po proboje moze blackd proxy bedzie latwiej wyciagnac , albo chociazby zrozumiec to (ps wie ktos jak pobrac wersje tego blackd free ?) bo niby jest napisane ze w free wersji jest ta opcja do znajdowania proxy , ale ta strona jest tak pojebana , ze nie wiem jak z tamtad sciagnac ta free wersje ; o bo ta co jest tu na forum dziala tylko do tibi 8.4 ?
    Ostatnio zmieniony przez Lenson : 14-01-2010, 02:10

  19. #330
    Shothic

    Domyślny

    Witam
    ma taki problem z battle listą i z atakowaniem potworów
    Adressy do 7.6
    lengthCreature" value="156"
    maxCreatures" value="150"
    bl_start = $4A12AC
    AttackedCreature" value="0x4A1214"

    Funkcja czytająca z battle listy :


    function IDByName(nickname : string): integer;
    var
    b :byte;
    ID_szuk : string;
    Begin
    for B:=0 to 150 do
    Begin
    ID_szuk:=MemReadString($4A12AC + (B*156));
    if (ID_szuk = nickname) and (MemReadSmallInt($4A12AC + (B*156) + 128) <> 0) then // czy widoczny potwór
    Begin
    Result := MemReadInt($4A12AC + (B*156) - 4);
    exit;
    End;
    end;
    end;
    Button przypisujący wartość ataku z edit :

    procedure TForm1.Button1Click(Sender: TObject);
    var
    s:String;
    begin
    s := IntToStr(idbyname(edit1.Text));
    MemWriteInt($4A1214, strtoint(s));
    end;

    Procedura atakująca :

    procedure AttackID;
    var
    buffer : Array[0..7] of Byte;
    target : integer;
    ProcessID: Cardinal;
    begin
    target := MemReadInt($4A1214);
    GetWindowThreadProcessId(FindWindow('TibiaClient', Nil), @ProcessID);
    buffer[0] := $05;
    buffer[1] := $00;
    buffer[2] := $A1;
    CopyMemory(@Buffer[3],@target,4);
    buffer[6] := $40;
    SendPacket(ProcessID, @buffer);
    end;

    Wszystko jest dobrze gdy np. wpisze nick gracza albo swój
    ale przy jakimś potworze jest tak ze czasami zaatakuje tylko wtedy gdy jest jeden i pierwszy raz atakowany,
    a potem to wogule nic ,nie szuka następnych tylko cały czas jest ta sama wartość.

    Wie ktoś czemu tak jest?

  20. Reklama
Reklama

Informacje o temacie

Użytkownicy przeglądający temat

Aktualnie 1 użytkowników przegląda ten temat. (0 użytkowników i 1 gości)

Podobne tematy

  1. Jak napisać powieść w 30 minut
    Przez konto usunięte w dziale Artyści
    Odpowiedzi: 1
    Ostatni post: 05-12-2012, 16:49
  2. [Inne] Jak napisać bota?
    Przez t3hp0wn w dziale Tibia
    Odpowiedzi: 1
    Ostatni post: 06-03-2011, 12:10
  3. Jak napisać temat, aby otrzymać jak najszybciej pomoc?
    Przez Killavus w dziale Strefa developerska
    Odpowiedzi: 0
    Ostatni post: 29-05-2010, 11:51
  4. [Poradnik] <Jak napisac scrypt do Blackd>
    Przez Lee of Honera w dziale Tibia
    Odpowiedzi: 5
    Ostatni post: 08-03-2009, 15:08

Zakładki

Zakładki

Zasady postowania

  • Nie możesz pisać nowych tematów
  • Nie możesz pisać postów
  • Nie możesz używać załączników
  • Nie możesz edytować swoich postów
  •