Reklama
Strona 13 z 33 PierwszaPierwsza ... 3111213141523 ... OstatniaOstatnia
Pokazuje wyniki od 181 do 195 z 486

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

  1. #181
    WalecznyMnich

    Domyślny

    Cytuj Damlox napisał
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    BATTLELIST_BEGIN 0x00621CD0
    BATTLELIST_END 0x00627A90
    0x00 equal $

  2. #182
    konto usunięte

    Domyślny

    Sorrka nie doczytałem :P Mógłby mi ktoś jeszcze raz wytłumaczyć jak zrobić spell castera. Prosze. :)

    //edit
    sam doszedłem do tego skąd mam wziąść adressy np. sword fighting itp. ale niewiem jak mam uzyskać z tego dane do stworzenia zmiany outfity albo spell castera :/. Oczywiście poradnik 11/10 :D
    Ostatnio zmieniony przez Vivynus : 10-07-2008, 14:59

  3. Reklama
  4. #183
    Avatar KACpero_1994
    Data rejestracji
    2008
    Położenie
    Sanok
    Posty
    21
    Siła reputacji
    0

    Domyślny

    Pordnik spoko i autor też. Może trochę skąplikowany ale mi pasuje.
    http://lastfm.pl/user/kacpik95 - last.fm

    Piszę po Polsku!

  5. #184
    Swvin

    Domyślny

    Mogłby ktos dac pakiety na Account Number i Password? (Do auto loginu) ??? Czekam...

  6. #185
    Avatar Damlox
    Data rejestracji
    2005
    Położenie
    Bielsko-Biała
    Wiek
    32
    Posty
    8
    Siła reputacji
    0

    Domyślny

    Jeżeli chodzi o spell caster, opiera się on na pakietach. Przykład takiego zastosowania zawarty został w pierwszym poście.
    Aby zmienić outfit postaci, musisz przede wszystkim znaleźć ją na battlelist,
    a następnie użyć funkcji zmieniającej wartość w danym adresie (w tym wypadku MemWriteInteger).
    Przykład:
    Kod:
    MemWriteInteger(battlelist_start+(i*160)+distance_outfit, 60, 2); // distance_outfit - odległość do adresu outfitu, 60 - nowy wygłąd, 2 - długość wartości

  7. #186
    Avatar Szczeepan
    Data rejestracji
    2005
    Położenie
    Wawa/TGK
    Wiek
    36
    Posty
    81
    Siła reputacji
    20

    Domyślny

    trzeba sciagnac tez nowego packet.dll ten stąd nie działa pod Tibie 8.2 sciagnolem new packet.dll zupdatowalem adresy i bot dzialal jak pod wczesniejsze wersje.

  8. #187
    konto usunięte

    Domyślny

    No niestety to za dużo na moją głowę. :P Ktoś tu podał nowy packet.dll ?

    //edit

    Aby zmienić outfit postaci, musisz przede wszystkim znaleźć ją na battlelist,(...)
    No właśnie trochę tego nie rozumiem. :/ Wiem, że Yooboo sie starał i inni też, no ale jakoś nie rozumiem.
    Ostatnio zmieniony przez Vivynus : 13-07-2008, 12:17

  9. #188
    Avatar Damlox
    Data rejestracji
    2005
    Położenie
    Bielsko-Biała
    Wiek
    32
    Posty
    8
    Siła reputacji
    0

    Domyślny

    Bibliotekę packet.dll pod różne wersje klienta Tibii możemy znaleźć pod adresem - http://www.tpforums.org/forum/showth...ght=packet.dll

    Hmm... teraz sprawa znajdywania pozycji gracza na battlelist.
    W sumie można to zrobić na dwa sposoby:
    • Dzięki ID gracza
    • Dzięki nazwie gracza


    Ten pierwszy sprawdza się, tylko jeżeli chcemy odwołać się do naszej postaci, gdyż znamy nasz ID
    (player_id = $00624C70).
    Taka funkcja wygląda następująco:
    Kod:
    function findplayerbyid(id: integer);
    var
    i: integer;
    begin
    for i:=0 to 150 do
    begin
    if (ReadMemInteger(battlelist_start+(i*160)-4) = id) then
    begin
    Result :=i;
    exit; 
    end;
    end;
    end;
    Ostatnio zmieniony przez Damlox : 13-07-2008, 21:52

  10. #189
    konto usunięte

    Domyślny

    Dzieki Damlox. Spróbuję od nova i za kilka dni wrzuce ssa co mi tam wyszło :PPP. Jeszcze jedno pytanko. Czy da się zmienić grafike w programie? Znaczy się np. ogrągłe okno, albo w org. stylu Vivynusa. :)))

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

    Domyślny

    #up:
    Ofc - wszystko da się zmienić ;) Możesz do tego użyć gotowych komponentów, albo popróbować samemu (co jest jednak trochę trudniejsze). Sam kształt okna nie jest specialnie trudny do wykonania.

    #edit,down:
    nie ma go w standardzie. Możesz poszukać zestawu "Raize Components", abo samemu przygotować 2-kolorową bitmapę, położyć na formę i jeden z kolorów w ustawieniach formy oznaczyć jako "przezroczysty". Forma przybierze kształt pierwszego koloru bitmapy.
    Ostatnio zmieniony przez Ar'buz : 13-07-2008, 19:48

  12. #191
    konto usunięte

    Domyślny

    Który komponent? Jest w standardowej wersji Delphi 7 ?

  13. #192
    Sokrates

    Domyślny

    Witam :)

    Mój problem polega na tym:
    [Fatal Error] Tibia_bot.dpr(5): Could not compile
    [Error] bot.pas(61): Declaration expected but end of file found

    Pozaznaczałem gdzie jest 5 linijka i 61 choć jej niema 0.o
    Kod: oczywiście # została zamienione na "małpę"
    Kod:
    unit Bot;
    
    interface
    
    uses              //Tutaj[Fatal Error] Tibia_bot.dpr(5): Could not compile used unit 'bot.pas'
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs;
    
    type
      TForm1 = class(TForm)
      private
        { Private declarations }
      public
        { Public declarations }
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    // Funkcje czytające
    
    function MemReadString(Address: Integer): String;
    var
    NB : LongWord;
    Temp : ARRAY [1..255] OF Byte;
    I : Byte;
    IDProcess, proc_ID : Cardinal;
    begin
    GetWindowThreadProcessID(FindWindow('TibiaClient', nil), #proc_ID);
    IDProcess := OpenProcess(PROCESS_ALL_ACCESS, false, proc_ID);
    Result := '';
    ReadProcessMemory(IDProcess, Ptr(Address), #Temp[1], 255, NB);
    for I := 1 to 255 do
    begin
    if ((Temp[i] = 0) or (Temp[i] = $0F)) then
    Break;
    Result := Result + Chr(Temp[i]);
    end;
    end;
    function ReadMemInteger(Address: Cardinal): Cardinal;       //Read adress:value
    var
    ProcId: Cardinal;
    tProc: THandle;
    NBR: Cardinal;
    value:integer;
    begin
        GetWindowThreadProcessId(FindWindow('TibiaClient',Nil), #ProcId);
        tProc:= OpenProcess(PROCESS_ALL_ACCESS, False, ProcId);
        ReadProcessMemory(tProc, Ptr(Address), #value, 4, NBR);
        CloseHandle(tProc);
        Result:=value;
    end;
    [Error] bot.pas(61): Declaration expected but end of file found || tego niema bo linijek jest tylko 55 0.o

    O już mi się udało wystarczyło dodać pod spodem end. :)


    O a teraz znowu mam problem bo mi nie wysletla okienka jak skomplikowalem i dalem F9

    Kod:
    Kod:
    unit Bot;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs;
    
    type
      TForm1 = class(TForm)
      private
        { Private declarations }
      public
        { Public declarations }
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    // Funkcje czytające
    
    function ReadMemInteger(Address: Cardinal): Cardinal;       //Read adress:value
    var
    ProcId: Cardinal;
    tProc: THandle;
    NBR: Cardinal;
    value:integer;
    begin
        GetWindowThreadProcessId(FindWindow('TibiaClient',Nil), @ProcId);
        tProc:= OpenProcess(PROCESS_ALL_ACCESS, False, ProcId);
        ReadProcessMemory(tProc, Ptr(Address), @value, 4, NBR);
        CloseHandle(tProc);
        Result:=value;
    end;
    
    
    function MemReadString(Address: Integer): String;
    var
    NB : LongWord;
    Temp : ARRAY [1..255] OF Byte;
    I : Byte;
    IDProcess, proc_ID : Cardinal;
    begin
    GetWindowThreadProcessID(FindWindow('TibiaClient', nil), @proc_ID);
    IDProcess := OpenProcess(PROCESS_ALL_ACCESS, false, proc_ID);
    Result := '';
    ReadProcessMemory(IDProcess, Ptr(Address), @Temp[1], 255, NB);
    for I := 1 to 255 do
    begin
    if ((Temp[i] = 0) or (Temp[i] = $0F)) then
    Break;
    Result := Result + Chr(Temp[i]);
    end;
    end;
    // Koniec - Funkcje czytające
    
    end.
    Wyświetla mi sie takie duże okno i nic :<
    link: h t t p://www7.speedyshare.com/data/346765714/11944944/79817199/error.jpg
    Ostatnio zmieniony przez Sokrates : 17-07-2008, 14:38 Powód: poprawa

  14. #193
    konto usunięte

    Domyślny

    Poradnik swietny ale komu chce sie w to bawic,mozna przecierz jak jest jakis update i niemozna sie logonoc napisac z nudow.Poradnik przyda sie osobom ktrzy nie graja w tibie ale sa na forum.

    Ocena:
    9,5/10

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

    Domyślny

    #up:
    Nic nie wniosłeś. Wogule nie wiem o co ci chodzi :|

    #sokrates:
    A co ty byś chciał?
    Skompilowałeś program mający funkcje odnajdującą tibię, otwierającą jej procesz i funkcję bodajże czytającą liczby z pamięci.

    Teraz dodaj pod jakimś przyciskiem obsługę tych funkcji. Program zadziałał - skompilował pustą formę, bo nic na nią nie położyłeś.
    Ostatnio zmieniony przez Ar'buz : 17-07-2008, 16:47

  16. #195
    Kerr

    Domyślny

    zacznijcie od jakichs prostych rzeczy (w stylu hello world, ew. kalkulatorek), po co komus zrobic bota, nie rozumiejac co wkleja ...

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 ProEda 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
  •