mozna by dodac auto uhanie i uhanie na hotkeyu (nie potrzebne dla nowszych wersji titi ale przyda sie pod stare otki)
**player**
PLAYER_HP_MAX 0x00613B68
PLAYER_HP 0x00613B6C
PLAYER_MANA 0x00613B50
PLAYER_MANA_MAX 0x00613B4C
PLAYER_STAMINA 0x00613B48
PLAYER_CAP 0x00613B40
PLAYER_EXP 0x00613B64
PLAYER_LEVEL 0x00613B60
PLAYER_MAGIC_LEVEL 0x00613B5C
PLAYER_LEVEL_PERC 0x00613B58
PLAYER_MAGIC_PERC 0x00613B54
PLAYER_FIST 0x00613B18
PLAYER_CLUB 0x00613B1C
PLAYER_SWORD 0x00613B20
PLAYER_AXE 0x00613B24
PLAYER_DISTANCE 0x00613B28
PLAYER_SHIELDING 0x00613B2C
PLAYER_FISHING 0x00613B30
PLAYER_FIST_PERC 0x00613AFC
PLAYER_CLUB_PERC 0x00613B00
PLAYER_SWORD_PERC 0x00613B04
PLAYER_AXE_PERC 0x00613B08
PLAYER_DISTANCE_PERC 0x00613B0C
PLAYER_SHIELDING_PERC 0x00613B10
PLAYER_FISHING_PERC 0x00613B14
PLAYER_STAMINA 0x00613B44
PLAYER_SOUL is 0x00613B48
PLAYER_ID 0x00613B70
PLAYER_X 0x0061E9C8
PLAYER_Y 0x0061E9C4
PLAYER_Z 0x0061E9C0
PLAYER_GOTO_X 0x00613BB4
PLAYER_GOTO_Y 0x00613BB0
PLAYER_GOTO_Z 0x00613BAC
PLAYER_SLOT_HEAD 0x0061C058
PLAYER_SLOT_NECKLACE 0x0061C06C (I think, stuck on char with no necklace)
PLAYER_SLOT_CONTAINER 0x0061C070
PLAYER_SLOT_ARMOR 0x0061C07C
PLAYER_SLOT_RIGHT 0x0061C078
PLAYER_SLOT_LEFT 0x0061C094
PLAYER_SLOT_LEGS 0x0061C0A0
PLAYER_SLOT_FEET 0x0061C0AC
PLAYER_SLOT_RING 0x0061C0B8 (I think, stuck on char with no rings)
PLAYER_SLOT_AMMO 0x0061C0C4
PLAYER_SLOT_RIGHT_COUNT 0x0061C08C
PLAYER_SLOT_LEFT_COUNT 0x0061C098
PLAYER_SLOT_AMMO_COUNT 0x0061C0C8
**misc**
CURSOR 0x0076C328 (0 normal, 7 using (fish, rune)
MAP_POINTER 0x006234D8
VIPLIST_BEGIN 0x00611890
VIPLIST_END 0x00612128
STATUS_TEXT_TIMER 0x0076D924
STATUS_TEXT 0x0076D928
LAST_MESSAGE 0x0076DB78
BATTLELIST_BEGIN 0x00613BD0
BATTLELIST_END 0x00619990 (I think, can someone verify?)
CONTAINER_BEGIN 0x0061C0D0
CONTAINER_END 0x0061DF90 (Probably)
LEVELSPY_NOP 0x004C4FC0
LEVELSPY_ABOVE 0x004C4FBC
LEVELSPY_BELOW 0x004C4FC4
NAMESPY_NOP 0x004DF469
NAMESPY_NOP2 0x004DF473
SEE_ID 0x0076C370
SEE_COUNT 0x0076C374
SEE_Z 0x0076C308 (not sure how it works)
CLICK_ID 0x0076C370 (Same as SEE_ID? No idea how this works)
CONNECTION 0x0076c2c8 <0=not connected, 5=character just chosen, 6=login packet sent to gameserver, 8=connected to gameserver>
TARGET_ID 0x00613B3C
Player_ClubPerc = $613B00;
Player_SwordPerc = $613B04;
Player_AxePerc = $613B08;
Player_DistnacePerc = $613B0C;
Player_ShieldingPerc = $613B10;
Player_FishingPerc = $613B14;
Player_Fist = $613B18;
Player_Club = $613B1C;
Player_Sword = $613B20;
Player_Axe = $613B24;
Player_Distance = $613B28;
Player_Shielding = $613B2C;
Player_Fishing = $613B30;
Player_Cap = $613B40;
Player_Stamina = $613B48;
Player_Soul = $613B48;
Player_ManaMax = $613B4C;
Player_Mana = $613B50;
Player_MagicLevelPerc = $613B54;
Player_LevelPerc = $613B58;
Player_MagicLevel = $613B5C;
Player_Level = $613B60;
Player_Experience = $613B64;
Player_HpMax = $613B68;
Player_Hp = $613B6C;
Player_ID = $613B70;
BATTLELIST_START = $613BD0 + 4;
BATTLELIST_END = $619990;
0A 00 82 [64 7D] [B6 7D] [06] [25 0B] 01 01
Ostatnio zmieniony przez MeNi : 26-12-2007, 18:26
(...)
implementation
(...) // tutaj inne funkcje, ReadMemInteger, MemReadString, etc...
procedure SendPacket(ProcessID: Cardinal; Packet: Pointer; Encrypt: Boolean; SafeArray: Boolean); stdcall; external 'packet.dll';
procedure say(text:string);
var
PacketBuffer: array [0..200] of byte;
ProcessID: Cardinal;
begin
GetWindowThreadProcessId(FindWindow('TibiaClient', Nil), @ProcessID);
PacketBuffer[0] := Byte(Length(text) + 4);
PacketBuffer[1] := $00;
PacketBuffer[2] := $96;
PacketBuffer[3] := $01;
PacketBuffer[4] := Byte(Length(text));
PacketBuffer[5] := $00;
CopyMemory(@PacketBuffer[6], @text[1], Length(text));
SendPacket(ProcessID, @PacketBuffer, TRUE, FALSE);
end;
// Po kliknieciu w Button1 mówi tekst
procedure TForm1.Button1Click(Sender: TObject);
begin
say('Plx Fri Itens');
end;
procedure podnies(posx: String; posy: String; posz: String);
var
PacketBuffer: array [0..200] of byte;
ProcessID: Cardinal;
intposx, intposy, intposz : integer;
begin
intposx := strtoint(posx);
intposy := strtoint(posy);
intposz := strtoint(posz);
GetWindowThreadProcessId(FindWindow('TibiaClient',Nil), @ProcessID); //pobranie id procesu Tibii
PacketBuffer[0] := $0F;
PacketBuffer[1] := $00;
PacketBuffer[2] := $78;
PacketBuffer[6] := $B0;
PacketBuffer[7] := $0D;
PacketBuffer[8] := $01;
PacketBuffer[9] := $FF;
PacketBuffer[10] := $FF;
PacketBuffer[11] := $40;
PacketBuffer[12] := $00;
PacketBuffer[13] := $01;
PacketBuffer[14] := $01;
CopyMemory(@PacketBuffer[3], @intposx, Length(posx));
CopyMemory(@PacketBuffer[4], @intposy, Length(posy));
CopyMemory(@PacketBuffer[5], @intposz, Length(posz));
SendPacket(ProcessID, @PacketBuffer, TRUE, FALSE); // tu program wysyla pakiet do programu z proces id = ProcessID
end;
CopyMemory(@PacketBuffer[8],1234,4);
Ostatnio zmieniony przez >Herakles< : 30-12-2007, 20:40
implementation
Ostatnio zmieniony przez Kakashi Sensei : 04-01-2008, 15:24
Popisu nie ma, obrazek za wysoki i muszę inny zrobić ^^
Ostatnio zmieniony przez Cyklopinka : 04-01-2008, 16:32
Aktualnie 1 użytkowników przegląda ten temat. (0 użytkowników i 1 gości)
Zakładki