Reklama
Strona 29 z 33 PierwszaPierwsza ... 192728293031 ... OstatniaOstatnia
Pokazuje wyniki od 421 do 435 z 486

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

  1. #421
    Avatar Rzulf
    Data rejestracji
    2009
    Posty
    481
    Siła reputacji
    16

    Domyślny

    Znalazlem ciekawy ots pod tibia 8.42 i chcialbym pod niego napisac bota i mam nadzieje, ze robiac to uda mi sie nauczyc czegos nowego. Adresy mam z tibiaapi, ale skad wzisc packet.dll pod 8.42? Czy moze packet.dll jest taki sam dla wszystkich wersji tibi? Kiedy uzywalem mojego pierwszego bota, posiadajacego tylko prosty spell caster w cliencie pojawial mi sie jakis pionowy pasek, jak temu zaradzic?

  2. #422

    Data rejestracji
    2010
    Posty
    18
    Siła reputacji
    0

    Domyślny

    Cytuj Rzulf napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    Znalazlem ciekawy ots pod tibia 8.42 i chcialbym pod niego napisac bota i mam nadzieje, ze robiac to uda mi sie nauczyc czegos nowego. Adresy mam z tibiaapi, ale skad wzisc packet.dll pod 8.42? Czy moze packet.dll jest taki sam dla wszystkich wersji tibi? Kiedy uzywalem mojego pierwszego bota, posiadajacego tylko prosty spell caster w cliencie pojawial mi sie jakis pionowy pasek, jak temu zaradzic?
    packet.dll jest open sourcem, wystarczy tylko podmienić adresy i skompilować ;)

  3. #423
    Avatar Rzulf
    Data rejestracji
    2009
    Posty
    481
    Siła reputacji
    16

    Domyślny

    A co zrobic z migajacym pionowym paskiem? Nie wiem tez jak podpiac sie pod przerobionego clienta. Probowalem czegos takiego:
    Kod :
     GetWindowThreadProcessId(FindWindow('DBVictory - War (v1.50).exe',Nil), @ProcId);
    bo tak jest w menadzerze zadan, ale ogarnolem, ze wczesniej bylo poprostu Tibia Client bez zadnego rozszezenia.

  4. Reklama
  5. #424
    Avatar LGTK
    Data rejestracji
    2009
    Położenie
    Podlaskie, Białystok
    Wiek
    33
    Posty
    267
    Siła reputacji
    16

    Domyślny

    Cytuj Rzulf napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    A co zrobic z migajacym pionowym paskiem? Nie wiem tez jak podpiac sie pod przerobionego clienta. Probowalem czegos takiego:
    Kod :
     GetWindowThreadProcessId(FindWindow('DBVictory - War (v1.50).exe',Nil), @ProcId);
    bo tak jest w menadzerze zadan, ale ogarnolem, ze wczesniej bylo poprostu Tibia Client bez zadnego rozszezenia.
    Klubster na tpforums napisał coś takiego
    RE: Elfbot on own made ot client
    hex editor and change CMainFrame to TIbiaclient
    Temat masz tu
    http://www.tpforums.org/forum/thread-7288-page-1.html
    I źle użyłeś findwindow
    Używa się go tak function FindWindow(lpClassName, lpWindowName: PChar): HWND;
    lpClassName - nazwa klasy okna nie tego jak figuruje u ciebie w procesach (bo wątpie że tak klasa się nazywa)
    lpWindowName - może być na nil to nazwa okna
    Ostatnio zmieniony przez LGTK : 27-09-2010, 20:53
    PIŻMAG

  6. #425
    Avatar Rzulf
    Data rejestracji
    2009
    Posty
    481
    Siła reputacji
    16

    Domyślny

    A napisal bys jak to konkretnie dla tego clienta zrobic? Ja sie troche pogubilem juz, moze dlatego, ze jestem zmeczony po 9 lekcjach :( to przegiecie tyla nam dowalic w poniedzialek. Z ta poprawiona funkcja dalo by rade to zrobic bez edycji hexkow?

  7. #426
    Avatar LGTK
    Data rejestracji
    2009
    Położenie
    Podlaskie, Białystok
    Wiek
    33
    Posty
    267
    Siła reputacji
    16

    Domyślny

    Cytuj Rzulf napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    A napisal bys jak to konkretnie dla tego clienta zrobic? Ja sie troche pogubilem juz, moze dlatego, ze jestem zmeczony po 9 lekcjach :( to przegiecie tyla nam dowalic w poniedzialek. Z ta poprawiona funkcja dalo by rade to zrobic bez edycji hexkow?
    Pobierz Xvi32 bedzie prosto jak co daj link do clienta zobaczę co i jak
    Ostatnio zmieniony przez LGTK : 27-09-2010, 22:51
    PIŻMAG

  8. Reklama
  9. #427
    Avatar Rzulf
    Data rejestracji
    2009
    Posty
    481
    Siła reputacji
    16

    Domyślny

    Kod :
    http://www.speedyshare.com/files/24313868/DBVictory_-_WAR_v1.50_.zip
    Jakby speedyshare nie dzialal
    Kod :
    http://www10.zippyshare.com/v/70950192/file.html
    Sciagnolem xvi32, ale chyba nie jest tak prosto :(
    Ostatnio zmieniony przez Rzulf : 27-09-2010, 23:09

  10. #428
    Avatar LGTK
    Data rejestracji
    2009
    Położenie
    Podlaskie, Białystok
    Wiek
    33
    Posty
    267
    Siła reputacji
    16

    Domyślny

    On działa na zasadzie PokemonOnline chyba zresztą w to się nie bawiłem
    Uchwyt możesz pobrać też w taki sposób
    dajesz h:= FindWindow(nil,'DBV WAR'); a potem zmieniaj nazwę okna na np
    Bot - Player Name
    Do tego służy SetWindowText(h,pchar(text));
    h: to uchwyt okna który pobrałeś wcześniej możesz go dać do globalnej zmiennej i pobierać na starcie aplikacji wtedy nie będziesz musiał znajdować go przy każdej próbie doczytania adddresu z pamięci czy wysłania pakietu
    text: to nowa nazwa okna
    Powinno działać.
    PIŻMAG

  11. #429
    Avatar Rzulf
    Data rejestracji
    2009
    Posty
    481
    Siła reputacji
    16

    Domyślny

    Dodajac to jako zmienna globalna mam to wsadzic pod
    Kod :
    implementation
    
    {$R *.dfm}
    h:= FindWindow(nil,'DBV WAR');
    i ma to tak wygladac?
    A np do timera dodac to:
    Kod :
    SetWindowText(h,pchar("Bot - "Player_Name ));
    Nie moge teraz tego przetestowac, bo jestem na informatyce, na ktorej cisniemy worda...
    Tak powinienem to zrobic?

  12. Reklama
  13. #430
    Avatar LGTK
    Data rejestracji
    2009
    Położenie
    Podlaskie, Białystok
    Wiek
    33
    Posty
    267
    Siła reputacji
    16

    Domyślny

    jak masz
    Kod :
    var
      Form1: TForm1;
         tu daj
    h: hwnd;
    
    {$R *.dfm}
    Potem daj na form create h:= FindWindow(nil,'DBV WAR');
    I do timera to co chcesz dać do timera
    PIŻMAG

  14. #431
    Avatar Rzulf
    Data rejestracji
    2009
    Posty
    481
    Siła reputacji
    16

    Domyślny

    Zrobilem tak jak pisales, ale cos nie wyszlo.

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

    Domyślny

    #up:
    Nie, żebym się wtrącał w tę rozmowę, ale... umiesz wogóle pisać w Delphi?
    Bo jeśli nie wiesz co zrobiłeś źle na tym screenie, to oznacza, że nie masz podstawowej.. kardynalnej wiedzy o tym języku.

  16. Reklama
  17. #433
    Avatar LGTK
    Data rejestracji
    2009
    Położenie
    Podlaskie, Białystok
    Wiek
    33
    Posty
    267
    Siła reputacji
    16

    Domyślny

    Cytuj Rzulf napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    Zrobilem tak jak pisales, ale cos nie wyszlo.
    Das opadły mi rency jak to das zobaczyłem...
    Przeczytaj jeszcze raz to co napisałem w poprzednim pości i przemyśl jak nadal nie będziesz wiedział ocb (dobre blety) to poleć tutaj... Pamiętaj że jak będziesz pisał bardziej skomplikowane rzeczy będziesz musiał myśleć sam w sumie dobrze by było żebyś teraz też sam pomyślał...
    @up genialnie powiedziane
    Ostatnio zmieniony przez LGTK : 28-09-2010, 22:30
    PIŻMAG

  18. #434

    Data rejestracji
    2009
    Położenie
    Giżycko
    Posty
    258
    Siła reputacji
    17

    Domyślny

    Napisz ten kod w jakiejś procedurze.

    PRZYKŁAD:

    Kod :
    procedure Find;
    var
      H : HWND;
    begin
      H := FindWindow(nil, 'DBV WAR');
    end;
    ...wywołujesz przez nazwe funkcji, np:

    Kod :
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      Find;
    end;

  19. #435

    Data rejestracji
    2010
    Posty
    18
    Siła reputacji
    0

    Domyślny

    Awangarda w delphi, wywołanie procedury w sekcji deklaracji zmiennych.

    Poza tym jak zwykle słuchacie przygłupa i jak zwykle nikt na tym dobrze nie wyjdzie. Dużo wydajniejszą metodą jest chociażby zrobienie sobie listy działających procesów i znalezienie tego, który jest na potrzebny.

  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
  •