 |
РУОФФ Адреса и оффсеты - Разработка ПО для Perfect World - Бюро разработчиков Zhyk.Ru: создание ботов, снифферов и прочих программ для Perfect World |
13.11.2016, 08:11
|
#1336
|
|
|
|
Разведчик
|
 Регистрация: 12.12.2009
 Сообщений: 7
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 5 раз(а) в 2 сообщениях
|
Re: РУОФФ Адреса и оффсеты
Код:
InviteCount = $00F06C6C // Счетчик уведомлений
InviteStruct = $00F06C60 // Указатель на структуру уведомлений
|
|
|
Пользователь сказал cпасибо:
|
|
17.11.2016, 14:20
|
#1337
|
|
|
|
Разведчик
|
 Регистрация: 21.10.2013
 Сообщений: 4
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 9 раз(а) в 8 сообщениях
|
Re: РУОФФ Адреса и оффсеты
WID on Mouse Over = BA + 1C + 1C + 18 + 8
|
|
|
Пользователь сказал cпасибо:
|
|
01.12.2016, 23:10
|
#1338
|
|
|
|
Пехотинец
|
 Регистрация: 03.01.2010
 Сообщений: 95
 Популярность: 1542
 Сказал(а) спасибо: 110
Поблагодарили 460 раз(а) в 288 сообщениях
|
Re: РУОФФ Адреса и оффсеты
В черновом варианте, просто скопировал и выложил, лень красоту наводить!
ЗВЕРИ ЭЛИЗИУМ:
Код:
blue = 18718; //Синие сферы
red = 18716; //Красные сферы
white = 18717;//Белые сферы
good = 18711; // Добрые гусеницы
bad = 18710; // Злые гусеницы
Base_addr = $00EF8344; //0
//GameAdress = BaseAdress + 0x1C(Array_addr_1)
Array_addr_1 = $1C;
Game_addr = $00EF8AEC; //0
//BA +0x1C(Array_addr_1) +0x1C(Array_addr_2) +0x60 +0x4 +0x0 Название локации
Array_Addr_2 = $1C;
Location_ID = $94;
Location_name = $60; //+4 +0
//Структура игрока:
Plr_Str = $34;
//BaseAdress +0x1C(Array_addr_1) +0x34(Plr_Str), длинна структуры 0x1274 байта
Plr_LocX = $3C;// LocX, float /Координата X/ +007C /Повтор/
Plr_LocZ = $40;// LocZ, float /Координата Z/ +0080 /Повтор/
Plr_LocY = $44;// LocY, float /Координата Y/ +0084 /Повтор/
Plr_Skilling = $B8;// /1b, byte, флаг использования скилла/Значения: 1 - скилл используется, 0 - нет
Plr_Mining = $288;// /1b, byte, флаг копки реса/ Значения: 0 - копает, 1 - не копает, валиден после 1й копки
Plr_BuffsArray = $390; //Список баффов/ + [I*2] Buffs, word
Plr_BuffsCnt = $398; //, dword /Количество баффов/
//Хеш близлежащих игроков/
Plr_PCCharacter = $3B4; //, array +088+I*4 (I=GA+34+38C+14)
Plr_PCCharacter_Cnt = $18;
Plr_PCCharacter_Array = $98;
//GenieRotationTimer = $3bc;//, dword /таймер, следящий за отображением джинна или фейки/
//GenieRotationTimerMax = $3c0;//, dword /максимальное значение этого таймера/
// IsGenieVisible = $3c4;//, byte/bool /если 1, то вокруг игрока летает джинн (если есть), иначе - фейка (если есть)/
Plr_Genie_array = $408;
Plr_Genie_Lvl = $6C;
Plr_Genie_Exp = $68;
Plr_Genie_Point = $70;
Plr_Genie_DopPoint = $C0;
Plr_WID = $4B8;//, dword /Мировой ID перса/
//4BC
//4C0
Plr_LeveL = $4C4;//, dword /Уровень перса/
//Plr_Status = $4C8;//, dword /Статус перса/ 30-ДЕМОН
Plr_HP = $4CC;//, dword /Жизненная сила/
Plr_MP = $4D0;//, dword /Магическая энергия/
Plr_Experience = $4D4;//, dword /текущий Опыт/
Plr_Spirit = $4D8;//, dword /текущий Дух/
//Plr_SkillPoins = $4DC;//, dword /Доступно очков для распределения/
Plr_Fury = $4E0;//, dword /CHI, Единицы Ярости/
//Plr_Atack = $4E4;// /ПОКАЗАТЕЛЬ Атака/
//Plr_Def = $4E8;// /показатель Защита/
//Plr_Krit = $4EC;// /Шанс крита/
// $4F0
//Plr_Steal = $4F4;// /Скрытность/
//Plr_Detect = $4F8;// /Обнаружение/
//Plr_Damage = $4FC;// /Урон по монстрам/
//Plr_Protect = $500;// /Защита от монстров/
//Plr_Morale = $504;// /Боевой дух/
//Plr_Fiz_Probiv = $508;// /физ. пробивание/
//Plr_Mag_Probiv = $50C;// /маг. пробивание/
//Plr_Vitality = $510;//, dword /Выносливость/
//Plr_Intellect = $514;//, dword /Интеллект/
//Plr_Strength = $518;//, dword /Сила/
//Plr_Dexterity = $51C;//, dword /Ловкость/
Plr_MaxHP = $520;//, dword /Максимум Жизненной Силы/
Plr_MaxMP = $524;//, dword /Максимум Магической Энергии/
//528
//52С
//530
//534
//538
//53С
//Plr_Hit = $540;//, dword /Меткость/
//Plr_MinPhyzAtk = $544;//, dword /Физ Атака, мин/
//Plr_MaxPhyzAtk = $548;//, dword /Физ Атака, макс/
//Plr_MinMagAtk = $57C;//, dword /Магическая атака, минимум/
//Plr_MaxMagAtk = $580;//, dword /Магическая атака, максимум/
//Plr_DefMetal = $584;//, dword /Защита, Металл/
//Plr_DefWood = $588;//, dword /Защита, Дерево/
//Plr_DefWater = $58C;//, dword /Защита, Вода/
//Plr_DefFire = $590;//, dword /Защита, Огонь/
//Plr_DefEarth = $594;//, dword /Защита, Земля/
//Plr_DefPhyz = $598;//, dword /Физическая защита/
//Plr_Flee = $59C;//, dword /Уклонение/
//Plr_MaxFury = $5A0;//, dword /Ярость, максимум/
Plr_TargetID = $5A4;
//Plr_Money = $5A8;//, dword /Деньги/
//Plr_MaxMoney = $5AC;//, dword /Деньги, максимально возможное/
//Plr_EquipWeapon = $5B0;//, word /оружие/
//Plr_EquipHelmet = $5B4;//, word /шлем/
//Plr_EquipNecklace = $5B8;//, word /бижа верх/
//Plr_EquipManteau = $5BC;//, word /накидка/
//Plr_EquipShirt = $5C0;//, word /корпус/
//Plr_EquipWaistAdorn = $5C4;//, word /бижа низ/
//Plr_EquipFootwear = $5C8;//, word /штаны/
//Plr_EquipBoots = $5CC;//, word /обувь/
//Plr_EquipWristBracer = $5D0;//, word /наручи/
//Plr_EquipRing1 = $5D4;//, word /кольцо 1/
//Plr_EquipRing2 = $5D8;//, word /кольцо 2/
//Prl_EquipProjectile = $5DC; //, word
Plr_EquipFly = $5E0;//, word /ID полета/
//Plr_EquipBodyFashion = $5E4;//, word*
//Plr_EquipLegwearFashion = $5E8;//, word*
//Plr_EquipSpecialFootwears = $5EC;//, word*
//Plr_EquipArmFashion = $5F0;//, word*
//Plr_EquipHead = $5F4;//, word*
//Plr_EquipPigment = $5F8;//, word* ID одетого книги
//Plr_EquipSmiley = $5FC;//, word* ID СМАЙЛИКОВ с права
//Plr_Equip_GuardianCharm = $600;//, word* ID одетой хирки на ХР
//Plr_Equip_SpiritCharm = $604;//, word* ID одетой хирки на MР
//Plr_EquipX1 = $608;//, word* ID сборник цитат
Plr_EquipGenie = $60C;//, word /wid одетого джина/
//Plr_Reputation = $610;//, dword D СМАЙЛИКОВ с лева
//EquipX2 = $0; // Жетон престижа
//Prl_Repa = $658; //репутация
//Plr_ClanID = $694;//, dword
//Plr_ClanPost = $698; // /Должность в клане/2-мастер, 3-маршал, 4-майор, 5-капитан
Prl_ActivePetId = $6A4; //ID призванного ездового пета. =0 если не призван/
//Plr_SpouseID = $6F0; //, dword /ID супруг(а)/
Plr_Name = $700;//, wchar*8 (UText / Unicode String)
Plr_ClassID = $704;//, byte Значение: 0-воин 1-маг 2-шаман 3-друид 4-оборотень 5-убийца 6-лучник 7-жрец 8-страж 9-мистик
//Plr_Gender = $6FC;//, byte /пол/ Значение: 0 - Male, 1 - Female
Plr_RunMode = $708;//, byte 0 - Walk, 1 - Run(скилл)
Plr_WalkMode = $710;//, byte 0 - Земля, 1 - Вода, 2 - Воздух
Plr_Meditation = $78C;//, byte /State/ 16(10) - полет 32(20) -медитация 0 - земляб вода
//Prl_AngryFlag = $798; //, byte флаг агра мечи
//Структуры членов группы/
Plr_Prt_Member = $7D0;//, array /Структуры членов группы/
Prt_Members_Cnt = $18; //, dword
Prt_Members_Array = $14;//, i = 0 to 6 - MemberIndex. PartyLeader i = 0 - всегда.
Prt_MemberWId = $0C;
Prt_Lvl = $10;//, dword
Prt_HP = $1C;//, dword
Prt_MP = $20;//, dword
Prt_MaxHP = $24;//, dword
Prt_MaxMP = $28;//, dword
Prt_LocX = $34;//, float
Prt_LocZ = $38;//, float
Prt_LocY = $3C;//, float
Prt_BuffsArray = $58; //Список баффов/
Prt_BuffsCnt = $60; //, dword /Количество баффов/
Plr_WaitSkill = $7EC;//
Wsk_SkillID = $08; //
//Wsk_SkillLvl = $0C; //
Wsk_SkillCoolDown = $10; // убывающий таймер показывающий сколько еще осталось до отката скилл. Если = 0, то скилл откатился
Wsk_SkillMaxCoolDown = $14; // максимальный показатель таймера
Plr_CastID = $7E8;//, dword Cast_WID на кого кастуется скилл
//Plr_OverheadName = $810;//, wchar /имя игрока, отображающееся над головой/
//Plr_NameCatHsop = $0;// /Название магазина/
//Plr_HandPers = $0;// /ID персонажа, которого держите на руках (или который вас держит)/
Plr_Skill_Activation_CoolDown = $B4C;
Plr_Skill_Activation_Max_CoolDown = $B50;
Plr_TimeMining = $B54;// /Время копания реса/
Plr_MaxTimeMining = $B58;// /Максимальное время копания реса/
//Plr_WaitPotFP = $0;//, dword /Откат смешанных зелий/
//Plr_WaitPotHP = $0;//, dword /Откат зелий здоровья/
//Plr_WaitPotMP = $0;//, dword /Откат зелий маны/
//WaitRunaTP = $0;//, dword /откат Руна переноса Id=14351/
//Plr_WaitPlayerInfo = $0;//,dword /Откат информации/
//Plr_WaitFoodPet = $0;//, dword /Откат кормления/
//Plr_WaitChemistry = $0;//, dword /Откат химии/
//WaitSos = $0; //Откат соски/
//Plr_WaitCharms = $0;//, dword
Plr_TargetIngID = $EE8; // ПРИ НАВЕДЕНИИ ПОКАЗЫВАЕТ WID ЦЕЛИ
Plr_GroundR = $F14;//, float
Plr_GroundZ = $F18;//, float
//Plr_JumpingCnt = $0;//
//BankPass = $0;//, byte /Флаг блокировки паролем от банка
// /Структура инвентаря/
Inv_Array = $10EC;
Inv_AlCnt = $14;//, dword /Макс кол-во ячеек в инв/
//+0F74 + 0x0C + [0x04 * I] (I = 0 .. Inv_count) - структура
Inv_Type = $08;//
Inv_ID = $0C;//, dword
Inv_Cnt = $10;//, dword /количество в ячейке/
Inv_Price = $1C;//, dword /цена/
Inv_Name = $40;//, +$0 Name, char, unicod /описание/
//5, 10, 13, 16, 19, 20, 27, 31, 32, 38, 40, 46, 39, 52, 58, 62, 63, 64, 65:
item_1_05 = $58; item_2_05 = $04;
//11,17: //17-камни 11-скилы
item_1_11 = $58; item_2_11 = $08;
//43: //гпб
item_1_43 = $60; item_2_43 = $04;
//8, 9, 22, 23: //9- хлеб, банки 8-дк, ресы, трава, формы, рупор, главы
item_1_08 = $60; item_2_08 = $0C;
//26: //яйца
item_1_26 = $AC; item_2_26 = $04;
//34: //34-книги
item_1_34 = $C0; item_2_34 = $04;
//4: //4-соски
item_1_04 = $C0; item_2_04 = $08;
//18:
item_1_18 = $C4; item_2_18 = $04;
//36, 37: //хиры
item_1_36 = $C8; item_2_36 = $04;
//2: //strella
item_1_02 = $D8; item_2_02 = $08;
//6: //стиль
item_1_06 = $DC; item_2_06 = $0C;
//7:
item_1_07 = $E0; item_2_07 = $04;
//0, 3: //0-шмот 3-бижа
item_1_00 = $EC; item_2_00 = $0C;
//15: //оружее
item_1_15 = $F4; item_2_15 = $0C;
//41: //джины
item_1_41 = $118; item_2_41 = $04;
Inv_GlType = $58;// +$0
Inv_Lvl = $64;// /Требуемый уровень для потов/
//StrengthCur = +68
//StrengthMax = +6c
//Inv_CrafterName = $78;//, char, unikod /Имя создателя/
//Inv_ExtraEffectsPtr = $A4;//, dword, adrarray /доп свойства/
{ +0x00 Effect1Id, dword /ID 1 го свойства/
+0x0C Effect1Value, float/dword /значение 1 го свойства/
+0x1C Effect2Id, dword /ID 2 го свойства/
+0x28 Effect2Value, float/dword /значение 2 го свойства/
+0x38 Effect3Id, dword /ID 3 го свойства/
+0x44 Effect3Value, float/dword /значение 3 го свойства/ }
//Inv_ExtraEffectsCount = $A8;//, ushort, /кол-во доп свойств/
//Структура экипировки/
Plr_EquipmentArray = $10F0;
//0C+[(0-x)*4] /Ячейка/
Plr_StrengthWeapon = $74;
Plr_StrengthWeaponMax = $78;
// квестовый инвентарь
//Quest_Items_Array = $0;//
// ReviewPlayerArr
// ReviewPlayerArr = $0;
{
+0x08 ID
+0x10 Number
+0x40 Description}
// массив действий
Action_Array = $154C;//
{ +C Stand Action
+14 Current Action
+14 +10 P.Target ID
+30 +4 MovePoint Action
+30 +4 + 20 Destination LocX
+30 +4 + 24 Destination LocZ
+30 +4 + 28 Destination LocY
+30 +8 MoveTarget Action
+30 +8 +20 Destination ID
+30 +10 +30 M.Target ID
+30 +2C Mining Action
+30 +30 PetEvocative Action }
//Квестовый массив/
Plr_Quest_Array = $1554;//
Plr_Quest_Addr_1 = $08;
Plr_Quest_Addr_2 = $0;//
//Quest count = +13DC + 0x08 + 0x00
//Quest addr = +13DC + 0x08 + (0x8+I*0x20)
//+13DC + 0x08 + (0x8+I*0x20) Quest ID (I = 0 .. Quest count)
// массив петов
Plr_Pet_Array = $1564;//
Pet_Hutch = $08; //Номер призванного пета (0-9), (-1) - пет не вызван/
ActivePetId = $64;// /Призванный пет/
//+(PetHutch*4+0x10), i=0-4(9)
Pet_Loyale = $04;//, dword /Верность/
Pet_Hunger = $08;//, dword /Голод, 0, 1, 2-изголодавшийся, 6,7-полуживой, 8-умирающий/
//Pet_Class = $18;// /класс пета - 0-ездовой, 1-друид, 2-декор/
Pet_HPPrc = $1C;//, float /Жизнь, от 0.00 до 1.00/
//Pet_MPPrc = $20;//, float /Мана, от 0.00 до 1.00 - для мистиков/
//Pet_Lvl = $24;//, dword /Уровень/
//Pet_Exp = $2C;//, dword /Опыт/
//Pet_Name = $34;//, wchar (UText / Unicode String) /Имя пета/
//Pet_HP = $38;//, dword /Жизнь/
//Pet_MP = $3C;//, dword /Мана - для мистиков/
Pet_SkillId1 = $40;//, dword /Id скила 1/
//Pet_SkillLvl1 = $44;// /Уровень скила 1, возм значения 0,1,2,3,4,5/
//Pet_WaitSkill1 = $48;// /Откат скилла 1/
Pet_SkillId2 = $50;//, dword /Id скила 2/
//Pet_SkillLvl2 = $54;// /Уровень скила 2/
//Pet_WaitSkill2 = $58;// /Откат скилла 2/
Pet_SkillId3 = $60;//, dword /Id скила 3/
//Pet_SkillLvl3 = $64;// /Уровень скила 3/
//Pet_WaitSkill3 = $68;// /Откат скилла 3/
Pet_SkillId4 = $70;//, dword /Id скила 4/
//Pet_SkillLvl4 = $74;// /Уровень скила 4/
//Pet_WaitSkill4 = $78;// /Откат скилла 4/
Pet_SkillId5 = $80;//, dword /Id скила 5/
Pet_SkillId6 = $90;//, dword /Id скила 6/
Pet_SkillId7 = $A0;//, dword /Id скила 7/
//Pet_MaxHP = $150;// /Не для друидов, для мистиков/
// массив скиллов persa
//+1400 + [0x04 * I] (I=0 .. Skills_count)
Plr_Skill_Array = $1578;
Plr_Skill_Count = $157C;//
//массив скилов джина
Plr_GenieSkill_Array = $15A8;
Plr_GenieSkill_Count = $15AC;
Plr_Target_Krd = $15D0;// +18C X, +190 Z, +194 Y, +D64 ID
Target_X = $18C;//
Target_Z = $190;//
Target_Y = $194;//
Plr_ColDush = $17F0;
//Структура игроков
//BA +0x1C(Array_addr_1) +0x1C(Array_addr_2) +0x20(Player_str) +0x14(Player_Cnt), dword /Количество/
//BA +0x1C +0x1C +0x20 +0x18(Player_array) +(i*0x4) +0x4 /i = 0 - 0x300/
//или
//BA +0x1C +0x34 +0x38C +0x88 +(i*0x4) /i = 0 - Count/
//или
//BA +0x1C +0x1C +0x20 +0x88 +(i*0x4) /i = 0 - Count/
{
Длинна структуры 0x91С байта
+0X3C LocX,float /Координата X/ (X/10+400)
+0x44 LocY,float /Координата Y/ (Y/10+550)
+0x40 LocZ,float /Координата Z/ (Z/10)
+0x46C ID, dword
+0x478 Lvl, dword
+0x47C WID, dword
+0x480 HP, dword
+0x484 MP, dword
+0x4C0 MaxHP, dword
+0x4C4 MaxMP, dword
+0x59C HPCharm
+0x5A0 MPCharm
+0x638 +0x0 Name, wchar (UText / Unicode String)
+0x6F8 MagAtk /Цель для маг атаки/
+0x724 +0x0 NameCatHsop, wchar (UText / Unicode String) `(734)
+0x--- PhizAtk /Цель для физ атаки/}
//Структура моба, NPC, пета
//BA + 0x1C(array_addr_1) + 0x1C(array_addr_2) + 0x20(mob_str) + 0x14(mob_Cnt), dword /Количество/
//BA + 0x1C + 0x1C + 0x20 + 0x18(mob_array) + [i*0x4] /i = 0 - 0x300/
//BA + 0x1C + 0x1C + 0x20 + 0x58 + [i*0x4] /i = 0 - 0x300/ ?
Mob_Str = $20;
Mob_Cnt = $18;
Mob_Array = $5C;
Mob_LocX = $3C;//
Mob_LocZ = $40;//
Mob_LocY = $44;//
Mob_Type = $B4;// Значение: 6 - моб, 7 - NPC, 9 - Pet
Mob_WID = $114;//
Mob_ID = $11C;//
Mob_Lvl = $120;//
Mob_HP = $128;//
Mob_MaxHP = $17C;//
Mob_Feature = $250;//
{Значение:
0 - Нет
1 - Ускорение
2 - Pacifist
3 - Усиленная защита
4 - Усиленная магическая защита
5 - Усиленная атака
6 - Усиленная магия
7 - Берсерк
8 - Улучшенное здоровье
9 - Слабость }
Mob_Name = $260;//
//Mob_Distance = $280;//
Mob_Envilopment = $2B4;// /0-земля 1-вода 2-воздух/
Mob_FlagAction = $2B8;// /1-стоит, 0-двигается/
Mob_Action = $2C4;// (0 - Пассивный; 2 - Физ.атака; 3 - Маг.атака; 4 - Умер; 5 - Двигается)
Mob_AttackFlag = $2d0;// /0 - нет, 1 - атакует/ 2d0
Mob_PTargetID = $2d4;// dword (ID для Физ.атаки) 2d4
Mob_MTargetID = $2cc;// dword (ID для Маг.атаки) 2cc
{ Может кто-нибудь поделиться
MobPTargetID = ???
MobMTargetID = ???
Для переагра нужно, без него бот дохнет слишком часто
$2f0 mag удар
$2f4 mob в атаке
$2f8 физ удар}
Mob_Buffs = $320;//
Mob_CountBuffs = $328;//
//Attack = +2C4
//Структура лута
//BA + 0x1C(array_addr_1) + 0x1C(array_addr_2 + 0x24(lut_str) + 0x14(lut_cnt) Count, dword /Количество/
//BA + 0x1C + 0x1C + 0x24 + 0x18(lut_array) + [i*0x4] /i = 0 - 0x300/
Lut_Str = $24;
Lut_Cnt = $14;
Lut_Array = $1C;
Lut_LocX = $3C;//,float /Координата X/ (X/10+400)
Lut_LocZ = $40;//,float /Координата Y/ (Y/10+550)
Lut_LocY = $44;//,float /Координата Z/ (Z/10)
Lut_WID = $110;//, dword
Lut_ID = $114;//, dword
Lut_Type = $150;//, 2byte
Lut_Lvl = $154;//, dword
//Lut_Distance = $158;//, float
Lut_Name = $168;//, wchar (UText / Unicode String)
//массив умений в базе buff_str
base_buff_count = $174;
base_buff_array = $168;
//массив умений в базе skillstr
base_skill_Count = $134;
base_skill_array = $128;
//Структура кланов
{BA +218 +4 Count, dword /Количество/
BA +218 +8 +[i*4] + (+0)^J: Clans Struct (I in [0..389])
+4 ID, dword
+8 +0 See: +4
+8 +4 +0 Name, wchar (UText / Unicode String)
+8 +8 Lvl, dword
+C See: +4 }
//Структура GUI GA+18+08
Gui_addr_1 = $18;
Gui_addr_2 = $08;
//(GUI+...)+74 - указатель на структуру активного окна(WinStruct)
Gui_WinStruct = $74;
ChatStartAddr = $00EFF4A0; //0
ChatNumberAddr = $00EFF4AC; //0
packet_addr = $008761E0; //0
fulltarget_addr = $00869AD0; //0
NPCSelect_addr = $008AE5B0; //0
talktonpc_addr = $00869F50; //0
// ButtonPress_addr = $00ADC960; //0
IdCancel_addr = $00E6FA8C; //0
AutoPath_addr = $004595C0; //0
GUI = $00AE1AE0; //0
Assist_addr = $008B05E0; //0
Jump_addr = $00404FE0; //0
unfreeze_addr = $00EF8FC0; //0
anfreeze_addr = $0044C4A0; //0
anfreeze_flag = $01B0;
freeze_flag = $00;
walkx_inject_addr = $004CEDC0; //0
walky_inject_addr = $004D5320; //0
walkz_inject_addr = $004CF3B0; //0
lut_pickup_addr = $004C46D0; //0
skill_addr = $004BC380; //0
SkillGenie_addr = $00570860; //0
OnlineFlag = $00EF8708; //0
InviteCount_addr = $00F06C6C; //0
InviteStruct_addr = $00F06C60; //0
BPoint_addr = $00F1DC30; //0
MaxPoint_addr = $00F1DC2C; //0
BashWID_addr = $00F1DB8C; //0
Point_1_addr = $00F1DEC8; //0
Point_2_addr = $00F1DECC; //0
Point_3_addr = $00F1DED0; //0
Point_4_addr = $00F1DED4; //0
Point_9_addr = $00F1DEE8; //0
Point_10_addr = $00F1DEEC; //0
{ Разбор запроса и ответа приема в пати
Офсеты
00A5FD90
+00 если 00A80A38, то окошко запроса пати уже закрылось (хотя на самом деле еще не знаю, что означает это число)
+04 00A80A48 - тоже, что выше
+10 ID перса, запрашивающего пати
+14 ID пати
если запрашивают 2 перса одновременно, то 2й
+1С контроль закрытия
+20
+2С ID перса
+30 ID пати
для инжектов
00651440 пригласить в пати
00651480 принять пати
Теперь вопрос если кто то послал запрос о дружбе - ID перса и запроса падают по тем же адресам. Не проверял, но предполагаю, что "взять на руки" будет тоже там. Как отличить, есть предположения?
// dw($B30258 + $C) - кол-во пунктов в приглашении - i
// str(dw(dw($B30258) + i*1C + $4)) - текст приглашения
// dw(dw($B30258) + i*1C + $10) - ID приглашающего
// dw(dw($B30258) + i*1C + $14) - partyInviteCounter
}
|
|
|
7 пользователя(ей) сказали cпасибо:
|
|
03.12.2016, 17:26
|
#1339
|
|
|
|
Разведчик
|
 Регистрация: 20.04.2011
 Сообщений: 1
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
|
Re: РУОФФ Адреса и оффсеты
буду признателен кто подскажет значение NPC_Coun=
|
|
|
19.01.2017, 17:39
|
#1340
|
|
|
|
Разведчик
|
 Регистрация: 05.10.2010
 Сообщений: 25
 Популярность: 10
 Сказал(а) спасибо: 4
Поблагодарили 0 раз(а) в 0 сообщениях
|
Re: РУОФФ Адреса и оффсеты
эх свежые бы адреса и оффсеты
|
|
|
19.01.2017, 17:46
|
#1341
|
|
|
|
Пехотинец
|
 Регистрация: 03.01.2010
 Сообщений: 95
 Популярность: 1542
 Сказал(а) спасибо: 110
Поблагодарили 460 раз(а) в 288 сообщениях
|
Re: РУОФФ Адреса и оффсеты
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
эх свежые бы адреса и оффсеты
|
|
 |
|
 |
|
Почти ничего не изменилось, где стоит "//Y" -- произведена замена!
Выкладываю как есть в черновом варианте:
Код:
unit ClientConst;
interface
uses Windows, Classes, SysUtils, IniFiles, Messages, Forms;
const
MaxSingle = $FFFFFFFF div 2;
idSkill = 'скилл:';
idPet = 'пет:';
idInv = 'инв:';
idGenie = 'Джин:';
idBaffs = 'Baffs:';
AutoPilotMode = 'Автопилот';
blue = 18718; //Синие сферы
red = 18716; //Красные сферы
white = 18717;//Белые сферы
good = 18711; // Добрые гусеницы
bad = 18710; // Злые гусеницы
Base_addr = $00EFF604; //Y
//GameAdress = BaseAdress + 0x1C(Array_addr_1)
Array_addr_1 = $1C;
Game_addr = $00EFFDAC; //Y
//BA +0x1C(Array_addr_1) +0x1C(Array_addr_2) +0x60 +0x4 +0x0 Название локации
Array_Addr_2 = $1C;
Location_ID = $94;
Location_name = $60; //+4 +0
//Структура игрока:
Plr_Str = $34;
//BaseAdress +0x1C(Array_addr_1) +0x34(Plr_Str), длинна структуры 0x1274 байта
Plr_LocX = $3C;// LocX, float /Координата X/ +007C /Повтор/
Plr_LocZ = $40;// LocZ, float /Координата Z/ +0080 /Повтор/
Plr_LocY = $44;// LocY, float /Координата Y/ +0084 /Повтор/
Plr_Skilling = $B8;// /1b, byte, флаг использования скилла/Значения: 1 - скилл используется, 0 - нет
Plr_Mining = $288;// /1b, byte, флаг копки реса/ Значения: 0 - копает, 1 - не копает, валиден после 1й копки
Plr_BuffsArray = $390; //Список баффов/ + [I*2] Buffs, word
Plr_BuffsCnt = $398; //, dword /Количество баффов/
//Хеш близлежащих игроков/
Plr_PCCharacter = $3B4; //, array +088+I*4 (I=GA+34+38C+14)
Plr_PCCharacter_Cnt = $18;
Plr_PCCharacter_Array = $98;
//GenieRotationTimer = $3bc;//, dword /таймер, следящий за отображением джинна или фейки/
//GenieRotationTimerMax = $3c0;//, dword /максимальное значение этого таймера/
// IsGenieVisible = $3c4;//, byte/bool /если 1, то вокруг игрока летает джинн (если есть), иначе - фейка (если есть)/
Plr_Genie_array = $408;
Plr_Genie_Lvl = $6C;
Plr_Genie_Exp = $68;
Plr_Genie_Point = $70;
Plr_Genie_DopPoint = $C0;
Plr_WID = $4B8;//, dword /Мировой ID перса/
//4BC
//4C0
Plr_LeveL = $4C4;//, dword /Уровень перса/
//Plr_Status = $4C8;//, dword /Статус перса/ 30-ДЕМОН
Plr_HP = $4CC;//, dword /Жизненная сила/
Plr_MP = $4D0;//, dword /Магическая энергия/
Plr_Experience = $4D4;//, dword /текущий Опыт/
Plr_Spirit = $4D8;//, dword /текущий Дух/
//Plr_SkillPoins = $4DC;//, dword /Доступно очков для распределения/
Plr_Fury = $4E0;//, dword /CHI, Единицы Ярости/
//Plr_Atack = $4E4;// /ПОКАЗАТЕЛЬ Атака/
//Plr_Def = $4E8;// /показатель Защита/
//Plr_Krit = $4EC;// /Шанс крита/
// $4F0
//Plr_Steal = $4F4;// /Скрытность/
//Plr_Detect = $4F8;// /Обнаружение/
//Plr_Damage = $4FC;// /Урон по монстрам/
//Plr_Protect = $500;// /Защита от монстров/
//Plr_Morale = $504;// /Боевой дух/
//Plr_Fiz_Probiv = $508;// /физ. пробивание/
//Plr_Mag_Probiv = $50C;// /маг. пробивание/
//Plr_Vitality = $510;//, dword /Выносливость/
//Plr_Intellect = $514;//, dword /Интеллект/
//Plr_Strength = $518;//, dword /Сила/
//Plr_Dexterity = $51C;//, dword /Ловкость/
Plr_MaxHP = $520;//, dword /Максимум Жизненной Силы/
Plr_MaxMP = $524;//, dword /Максимум Магической Энергии/
//528
//52С
//530
//534
//538
//53С
//Plr_Hit = $540;//, dword /Меткость/
//Plr_MinPhyzAtk = $544;//, dword /Физ Атака, мин/
//Plr_MaxPhyzAtk = $548;//, dword /Физ Атака, макс/
//Plr_MinMagAtk = $57C;//, dword /Магическая атака, минимум/
//Plr_MaxMagAtk = $580;//, dword /Магическая атака, максимум/
//Plr_DefMetal = $584;//, dword /Защита, Металл/
//Plr_DefWood = $588;//, dword /Защита, Дерево/
//Plr_DefWater = $58C;//, dword /Защита, Вода/
//Plr_DefFire = $590;//, dword /Защита, Огонь/
//Plr_DefEarth = $594;//, dword /Защита, Земля/
//Plr_DefPhyz = $598;//, dword /Физическая защита/
//Plr_Flee = $59C;//, dword /Уклонение/
//Plr_MaxFury = $5A0;//, dword /Ярость, максимум/
Plr_TargetID = $5A4;
//Plr_Money = $5A8;//, dword /Деньги/
//Plr_MaxMoney = $5AC;//, dword /Деньги, максимально возможное/
//Plr_EquipWeapon = $5B0;//, word /оружие/
//Plr_EquipHelmet = $5B4;//, word /шлем/
//Plr_EquipNecklace = $5B8;//, word /бижа верх/
//Plr_EquipManteau = $5BC;//, word /накидка/
//Plr_EquipShirt = $5C0;//, word /корпус/
//Plr_EquipWaistAdorn = $5C4;//, word /бижа низ/
//Plr_EquipFootwear = $5C8;//, word /штаны/
//Plr_EquipBoots = $5CC;//, word /обувь/
//Plr_EquipWristBracer = $5D0;//, word /наручи/
//Plr_EquipRing1 = $5D4;//, word /кольцо 1/
//Plr_EquipRing2 = $5D8;//, word /кольцо 2/
//Prl_EquipProjectile = $5DC; //, word
Plr_EquipFly = $5E0;//, word /ID полета/
//Plr_EquipBodyFashion = $5E4;//, word*
//Plr_EquipLegwearFashion = $5E8;//, word*
//Plr_EquipSpecialFootwears = $5EC;//, word*
//Plr_EquipArmFashion = $5F0;//, word*
//Plr_EquipHead = $5F4;//, word*
//Plr_EquipPigment = $5F8;//, word* ID одетого книги
//Plr_EquipSmiley = $5FC;//, word* ID СМАЙЛИКОВ с права
//Plr_Equip_GuardianCharm = $600;//, word* ID одетой хирки на ХР
//Plr_Equip_SpiritCharm = $604;//, word* ID одетой хирки на MР
//Plr_EquipX1 = $608;//, word* ID сборник цитат
Plr_EquipGenie = $60C;//, word /wid одетого джина/
//Plr_Reputation = $610;//, dword D СМАЙЛИКОВ с лева
//EquipX2 = $0; // Жетон престижа
//Prl_Repa = $658; //репутация
//Plr_ClanID = $694;//, dword
//Plr_ClanPost = $698; // /Должность в клане/2-мастер, 3-маршал, 4-майор, 5-капитан
Prl_ActivePetId = $6A4; //ID призванного ездового пета. =0 если не призван/
//Plr_SpouseID = $6F0; //, dword /ID супруг(а)/
Plr_Name = $700;//, wchar*8 (UText / Unicode String)
Plr_ClassID = $704;//, byte Значение: 0-воин 1-маг 2-шаман 3-друид 4-оборотень 5-убийца 6-лучник 7-жрец 8-страж 9-мистик
//Plr_Gender = $6FC;//, byte /пол/ Значение: 0 - Male, 1 - Female
Plr_WalkMode = $710;//, byte 0 - Земля, 1 - Вода, 2 - Воздух
Plr_RunMode = $70C;//, byte 0 - Walk, 1 - Run(скилл), 2 - прыгнул
Plr_Meditation = $78C;//, byte /State/ 16(10) - полет 32(20) -медитация 0 - земляб вода
//Prl_AngryFlag = $798; //, byte флаг агра мечи
//Структуры членов группы/
Plr_Prt_Member = $7D0;//, array /Структуры членов группы/
Prt_Members_Cnt = $18; //, dword
Prt_Members_Array = $14;//, i = 0 to 6 - MemberIndex. PartyLeader i = 0 - всегда.
Prt_MemberWId = $0C;
Prt_Lvl = $10;//, dword
Prt_HP = $1C;//, dword
Prt_MP = $20;//, dword
Prt_MaxHP = $24;//, dword
Prt_MaxMP = $28;//, dword
Prt_LocX = $34;//, float
Prt_LocZ = $38;//, float
Prt_LocY = $3C;//, float
Prt_BuffsArray = $58; //Список баффов/
Prt_BuffsCnt = $60; //, dword /Количество баффов/
Plr_WaitSkill = $7EC;//
Wsk_SkillID = $08; //
//Wsk_SkillLvl = $0C; //
Wsk_SkillCoolDown = $10; // убывающий таймер показывающий сколько еще осталось до отката скилл. Если = 0, то скилл откатился
Wsk_SkillMaxCoolDown = $14; // максимальный показатель таймера
Plr_CastID = $7E8;//, dword Cast_WID на кого кастуется скилл
//Plr_OverheadName = $810;//, wchar /имя игрока, отображающееся над головой/
//Plr_NameCatHsop = $0;// /Название магазина/
//Plr_HandPers = $0;// /ID персонажа, которого держите на руках (или который вас держит)/
Plr_Skill_Activation_CoolDown = $B4C;
Plr_Skill_Activation_Max_CoolDown = $B50;
Plr_TimeMining = $B54;// /Время копания реса/
Plr_MaxTimeMining = $B58;// /Максимальное время копания реса/
//Plr_WaitPotFP = $0;//, dword /Откат смешанных зелий/
//Plr_WaitPotHP = $0;//, dword /Откат зелий здоровья/
//Plr_WaitPotMP = $0;//, dword /Откат зелий маны/
//WaitRunaTP = $0;//, dword /откат Руна переноса Id=14351/
//Plr_WaitPlayerInfo = $0;//,dword /Откат информации/
//Plr_WaitFoodPet = $0;//, dword /Откат кормления/
//Plr_WaitChemistry = $0;//, dword /Откат химии/
//WaitSos = $0; //Откат соски/
//Plr_WaitCharms = $0;//, dword
Plr_TargetIngID = $EE8; // ПРИ НАВЕДЕНИИ ПОКАЗЫВАЕТ WID ЦЕЛИ
Plr_GroundR = $F14;//, float
Plr_GroundZ = $F18;//, float
//Plr_JumpingCnt = $0;//
//BankPass = $0;//, byte /Флаг блокировки паролем от банка
// /Структура инвентаря/
Inv_Array = $10EC;
Inv_AlCnt = $14;//, dword /Макс кол-во ячеек в инв/
//+0F74 + 0x0C + [0x04 * I] (I = 0 .. Inv_count) - структура
Inv_Type = $08;//
Inv_ID = $0C;//, dword
Inv_Cnt = $10;//, dword /количество в ячейке/
Inv_Price = $1C;//, dword /цена/
Inv_Name = $40;//, +$0 Name, char, unicod /описание/
//5, 10, 13, 16, 19, 20, 27, 31, 32, 38, 40, 46, 39, 52, 58, 62, 63, 64, 65:
item_1_05 = $58; item_2_05 = $04;
//11,17: //17-камни 11-скилы
item_1_11 = $58; item_2_11 = $08;
//43: //гпб
item_1_43 = $60; item_2_43 = $04;
//8, 9, 22, 23: //9- хлеб, банки 8-дк, ресы, трава, формы, рупор, главы
item_1_08 = $60; item_2_08 = $0C;
//26: //яйца
item_1_26 = $AC; item_2_26 = $04;
//34: //34-книги
item_1_34 = $C0; item_2_34 = $04;
//4: //4-соски
item_1_04 = $C0; item_2_04 = $08;
//18:
item_1_18 = $C4; item_2_18 = $04;
//36, 37: //хиры
item_1_36 = $C8; item_2_36 = $04;
//2: //strella
item_1_02 = $D8; item_2_02 = $08;
//6: //стиль
item_1_06 = $DC; item_2_06 = $0C;
//7:
item_1_07 = $E0; item_2_07 = $04;
//0, 3: //0-шмот 3-бижа
item_1_00 = $EC; item_2_00 = $0C;
//15: //оружее
item_1_15 = $F4; item_2_15 = $0C;
//41: //джины
item_1_41 = $118; item_2_41 = $04;
Inv_GlType = $58;// +$0
Inv_Lvl = $64;// /Требуемый уровень для потов/
//StrengthCur = +68
//StrengthMax = +6c
//Inv_CrafterName = $78;//, char, unikod /Имя создателя/
//Inv_ExtraEffectsPtr = $A4;//, dword, adrarray /доп свойства/
{ +0x00 Effect1Id, dword /ID 1 го свойства/
+0x0C Effect1Value, float/dword /значение 1 го свойства/
+0x1C Effect2Id, dword /ID 2 го свойства/
+0x28 Effect2Value, float/dword /значение 2 го свойства/
+0x38 Effect3Id, dword /ID 3 го свойства/
+0x44 Effect3Value, float/dword /значение 3 го свойства/ }
//Inv_ExtraEffectsCount = $A8;//, ushort, /кол-во доп свойств/
//Структура экипировки/
Plr_EquipmentArray = $10F0;
//0C+[(0-x)*4] /Ячейка/
Plr_StrengthWeapon = $74;
Plr_StrengthWeaponMax = $78;
// квестовый инвентарь
//Quest_Items_Array = $0;//
// ReviewPlayerArr
// ReviewPlayerArr = $0;
{
+0x08 ID
+0x10 Number
+0x40 Description}
// массив действий
Action_Array = $154C;//
{ +C Stand Action
+14 Current Action
+14 +10 P.Target ID
+30 +4 MovePoint Action
+30 +4 + 20 Destination LocX
+30 +4 + 24 Destination LocZ
+30 +4 + 28 Destination LocY
+30 +8 MoveTarget Action
+30 +8 +20 Destination ID
+30 +10 +30 M.Target ID
+30 +2C Mining Action
+30 +30 PetEvocative Action }
//Квестовый массив/
Plr_Quest_Array = $1554;//
Plr_Quest_Addr_1 = $08;
Plr_Quest_Addr_2 = $0;//
//Quest count = +13DC + 0x08 + 0x00
//Quest addr = +13DC + 0x08 + (0x8+I*0x20)
//+13DC + 0x08 + (0x8+I*0x20) Quest ID (I = 0 .. Quest count)
// массив петов
Plr_Pet_Array = $1564;//
Pet_Hutch = $08; //Номер призванного пета (0-9), (-1) - пет не вызван/
ActivePetId = $64;// /Призванный пет/
//+(PetHutch*4+0x10), i=0-4(9)
Pet_Loyale = $04;//, dword /Верность/
Pet_Hunger = $08;//, dword /Голод, 0, 1, 2-изголодавшийся, 6,7-полуживой, 8-умирающий/
//Pet_Class = $18;// /класс пета - 0-ездовой, 1-друид, 2-декор/
Pet_HPPrc = $1C;//, float /Жизнь, от 0.00 до 1.00/
//Pet_MPPrc = $20;//, float /Мана, от 0.00 до 1.00 - для мистиков/
//Pet_Lvl = $24;//, dword /Уровень/
//Pet_Exp = $2C;//, dword /Опыт/
//Pet_Name = $34;//, wchar (UText / Unicode String) /Имя пета/
//Pet_HP = $38;//, dword /Жизнь/
//Pet_MP = $3C;//, dword /Мана - для мистиков/
Pet_SkillId1 = $40;//, dword /Id скила 1/
//Pet_SkillLvl1 = $44;// /Уровень скила 1, возм значения 0,1,2,3,4,5/
//Pet_WaitSkill1 = $48;// /Откат скилла 1/
Pet_SkillId2 = $50;//, dword /Id скила 2/
//Pet_SkillLvl2 = $54;// /Уровень скила 2/
//Pet_WaitSkill2 = $58;// /Откат скилла 2/
Pet_SkillId3 = $60;//, dword /Id скила 3/
//Pet_SkillLvl3 = $64;// /Уровень скила 3/
//Pet_WaitSkill3 = $68;// /Откат скилла 3/
Pet_SkillId4 = $70;//, dword /Id скила 4/
//Pet_SkillLvl4 = $74;// /Уровень скила 4/
//Pet_WaitSkill4 = $78;// /Откат скилла 4/
Pet_SkillId5 = $80;//, dword /Id скила 5/
Pet_SkillId6 = $90;//, dword /Id скила 6/
Pet_SkillId7 = $A0;//, dword /Id скила 7/
//Pet_MaxHP = $150;// /Не для друидов, для мистиков/
// массив скиллов persa
//+1400 + [0x04 * I] (I=0 .. Skills_count)
Plr_Skill_Array = $1578;
Plr_Skill_Count = $157C;//
//массив скилов джина
Plr_GenieSkill_Array = $15A8;
Plr_GenieSkill_Count = $15AC;
Plr_Target_Krd = $15D0;// +18C X, +190 Z, +194 Y, +D64 ID
Target_X = $18C;//
Target_Z = $190;//
Target_Y = $194;//
Plr_ColDush = $17F0;
//Структура игроков
//BA +0x1C(Array_addr_1) +0x1C(Array_addr_2) +0x20(Player_str) +0x14(Player_Cnt), dword /Количество/
//BA +0x1C +0x1C +0x20 +0x18(Player_array) +(i*0x4) +0x4 /i = 0 - 0x300/
//или
//BA +0x1C +0x34 +0x38C +0x88 +(i*0x4) /i = 0 - Count/
//или
//BA +0x1C +0x1C +0x20 +0x88 +(i*0x4) /i = 0 - Count/
{
Длинна структуры 0x91С байта
+0X3C LocX,float /Координата X/ (X/10+400)
+0x44 LocY,float /Координата Y/ (Y/10+550)
+0x40 LocZ,float /Координата Z/ (Z/10)
+0x46C ID, dword
+0x478 Lvl, dword
+0x47C WID, dword
+0x480 HP, dword
+0x484 MP, dword
+0x4C0 MaxHP, dword
+0x4C4 MaxMP, dword
+0x59C HPCharm
+0x5A0 MPCharm
+0x638 +0x0 Name, wchar (UText / Unicode String)
+0x6F8 MagAtk /Цель для маг атаки/
+0x724 +0x0 NameCatHsop, wchar (UText / Unicode String) `(734)
+0x--- PhizAtk /Цель для физ атаки/}
//Структура моба, NPC, пета
//BA + 0x1C(array_addr_1) + 0x1C(array_addr_2) + 0x20(mob_str) + 0x14(mob_Cnt), dword /Количество/
//BA + 0x1C + 0x1C + 0x20 + 0x18(mob_array) + [i*0x4] /i = 0 - 0x300/
//BA + 0x1C + 0x1C + 0x20 + 0x58 + [i*0x4] /i = 0 - 0x300/ ?
Mob_Str = $20;
Mob_Cnt = $18;
Mob_Array = $5C;
Mob_LocX = $3C;//
Mob_LocZ = $40;//
Mob_LocY = $44;//
Mob_Type = $B4;// Значение: 6 - моб, 7 - NPC, 9 - Pet
Mob_WID = $114;//
Mob_ID = $11C;//
Mob_Lvl = $120;//
Mob_HP = $128;//
Mob_MaxHP = $17C;//
Mob_Feature = $250;//
{Значение:
0 - Нет
1 - Ускорение
2 - Pacifist
3 - Усиленная защита
4 - Усиленная магическая защита
5 - Усиленная атака
6 - Усиленная магия
7 - Берсерк
8 - Улучшенное здоровье
9 - Слабость }
Mob_Name = $260;//
//Mob_Distance = $280;//
Mob_Envilopment = $2B4;// /0-земля 1-вода 2-воздух/
Mob_FlagAction = $2B8;// /1-стоит, 0-двигается/
Mob_Action = $2C4;// (0 - Пассивный; 2 - Физ.атака; 3 - Маг.атака; 4 - Умер; 5 - Двигается)
Mob_AttackFlag = $2d0;// /0 - нет, 1 - атакует/ 2d0
Mob_PTargetID = $2d4;// dword (ID для Физ.атаки) 2d4
Mob_MTargetID = $2cc;// dword (ID для Маг.атаки) 2cc
{ Может кто-нибудь поделиться
MobPTargetID = ???
MobMTargetID = ???
Для переагра нужно, без него бот дохнет слишком часто
$2f0 mag удар
$2f4 mob в атаке
$2f8 физ удар}
Mob_Buffs = $320;//
Mob_CountBuffs = $328;//
//Attack = +2C4
//Структура лута
//BA + 0x1C(array_addr_1) + 0x1C(array_addr_2 + 0x24(lut_str) + 0x14(lut_cnt) Count, dword /Количество/
//BA + 0x1C + 0x1C + 0x24 + 0x18(lut_array) + [i*0x4] /i = 0 - 0x300/
Lut_Str = $24;
Lut_Cnt = $14;
Lut_Array = $1C;
Lut_LocX = $3C;//,float /Координата X/ (X/10+400)
Lut_LocZ = $40;//,float /Координата Y/ (Y/10+550)
Lut_LocY = $44;//,float /Координата Z/ (Z/10)
Lut_WID = $110;//, dword
Lut_ID = $114;//, dword
Lut_Type = $150;//, 2byte
Lut_Lvl = $154;//, dword
//Lut_Distance = $158;//, float
Lut_Name = $168;//, wchar (UText / Unicode String)
//массив умений в базе buff_str
base_buff_count = $174;
base_buff_array = $168;
//массив умений в базе skillstr
base_skill_Count = $134;
base_skill_array = $128;
//Структура кланов
{BA +218 +4 Count, dword /Количество/
BA +218 +8 +[i*4] + (+0)^J: Clans Struct (I in [0..389])
+4 ID, dword
+8 +0 See: +4
+8 +4 +0 Name, wchar (UText / Unicode String)
+8 +8 Lvl, dword
+C See: +4 }
//Структура GUI GA+18+08
Gui_addr_1 = $18;
Gui_addr_2 = $08;
//(GUI+...)+74 - указатель на структуру активного окна(WinStruct)
Gui_WinStruct = $74;
ChatStartAddr = $00F06768; //Y
ChatNumberAddr = $00F06774; //Y
packet_addr = $0087A600; //Y
fulltarget_addr = $0086E4D0; //Y
NPCSelect_addr = $008B35A0; //Y
talktonpc_addr = $0086E950; //Y
// ButtonPress_addr = $00ADC960; //0
IdCancel_addr = $00E76AE4; //Y
AutoPath_addr = $00459740; //Y
GUI = $00AE71C0; //Y
Assist_addr = $008B55D0; //Y
Jump_addr = $00404FF0; //Y
unfreeze_addr = $00F00280; //Y
anfreeze_addr = $0044C630; //Y
anfreeze_flag = $01B0;
freeze_flag = $00;
walkx_inject_addr = $004CF3D0; //Y
walky_inject_addr = $004D5950; //Y
walkz_inject_addr = $004CF9E0; //Y
lut_pickup_addr = $004C4AD0; //Y
skill_addr = $004BC760; //Y
SkillGenie_addr = $00570A30; //Y
OnlineFlag = $00EFF9C8; //Y
InviteCount_addr = $00F0DF94; //Y
InviteStruct_addr = $00F0DF88; //Y
BPoint_addr = $00F25020; //Y
MaxPoint_addr = $00F2501C; //Y
BashWID_addr = $00F24F7C; //Y
Point_1_addr = $00F252B8; //Y
Point_2_addr = $00F252BC; //Y
Point_3_addr = $00F252C0; //Y
Point_4_addr = $00F252C4; //Y
Point_9_addr = $00F252DC; //Y
Point_10_addr = $00F252E0; //Y
{ Разбор запроса и ответа приема в пати
Офсеты
00A5FD90
+00 если 00A80A38, то окошко запроса пати уже закрылось (хотя на самом деле еще не знаю, что означает это число)
+04 00A80A48 - тоже, что выше
+10 ID перса, запрашивающего пати
+14 ID пати
если запрашивают 2 перса одновременно, то 2й
+1С контроль закрытия
+20
+2С ID перса
+30 ID пати
для инжектов
00651440 пригласить в пати
00651480 принять пати
Теперь вопрос если кто то послал запрос о дружбе - ID перса и запроса падают по тем же адресам. Не проверял, но предполагаю, что "взять на руки" будет тоже там. Как отличить, есть предположения?
// dw($B30258 + $C) - кол-во пунктов в приглашении - i
// str(dw(dw($B30258) + i*1C + $4)) - текст приглашения
// dw(dw($B30258) + i*1C + $10) - ID приглашающего
// dw(dw($B30258) + i*1C + $14) - partyInviteCounter
}
implementation
end.
|
|
|
7 пользователя(ей) сказали cпасибо:
|
|
20.01.2017, 14:47
|
#1342
|
|
|
|
Разведчик
|
 Регистрация: 04.04.2015
 Сообщений: 1
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
|
Re: РУОФФ Адреса и оффсеты
для missouri пв (1.5.3) есть оффсеты у кого?
[Ссылки могут видеть только зарегистрированные пользователи. ]
|
|
|
05.03.2017, 16:02
|
#1343
|
|
|
|
Разведчик
|
 Регистрация: 11.10.2010
 Сообщений: 13
 Популярность: 10
 Сказал(а) спасибо: 3
Поблагодарили 5 раз(а) в 5 сообщениях
|
Re: РУОФФ Адреса и оффсеты
|
|
|
Пользователь сказал cпасибо:
|
|
27.04.2017, 14:24
|
#1344
|
|
|
|
Разведчик
|
 Регистрация: 06.07.2013
 Сообщений: 9
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 1 раз в 1 сообщении
|
Re: РУОФФ Адреса и оффсеты
что-либо изменилось с тех пор?
что-то не читается ...
а нет, вроде работает, но всё равно вопрос: в какой кодировке пишется название локации?
ни ник, ни локацию не удается прочитать адекватно
читаю так
Код:
#define PERS_NAME 0x700
....
wchar_t Name[8];
....
ReadProcessMemory(hProcess, (void*)(buff + PERS_NAME), Name, 8*sizeof(wchar_t), NULL);
выводить как только не пытался:
Код:
std::wcout << Name << std::endl;
printf ("%ws\n", Name);
wprintf(Name);
printf("%c\n", (char)Name[0]);
всё без какого-либо результата. MessageBox тоже.
Что делать?
в том числе и посимвольно
Последний раз редактировалось dronte; 27.04.2017 в 17:55.
|
|
|
29.04.2017, 17:36
|
#1345
|
|
|
|
Разведчик
|
 Регистрация: 06.07.2013
 Сообщений: 9
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 1 раз в 1 сообщении
|
Re: РУОФФ Адреса и оффсеты
кто знает, что такое
BA +0x1C +0x20 +0x3D
?
0x3D составляется из 0x2C и 0x11
и да, именно один раз 0x1C
Последний раз редактировалось dronte; 29.04.2017 в 18:46.
|
|
|
13.05.2017, 10:44
|
#1346
|
|
|
|
Разведчик
|
 Регистрация: 01.12.2013
 Сообщений: 8
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
|
Re: РУОФФ Адреса и оффсеты
а как эти оффсеты вставить в автосвап? подскажет кто?
|
|
|
26.05.2017, 07:41
|
#1347
|
|
|
|
Разведчик
|
 Регистрация: 05.10.2010
 Сообщений: 25
 Популярность: 10
 Сказал(а) спасибо: 4
Поблагодарили 0 раз(а) в 0 сообщениях
|
Re: РУОФФ Адреса и оффсеты
упс, очередная обнова пв оффа- снова поиски оффсетов
|
|
|
26.05.2017, 15:16
|
#1348
|
|
|
|
Разведчик
|
 Регистрация: 06.08.2016
 Сообщений: 13
 Популярность: -108
 Сказал(а) спасибо: 0
Поблагодарили 17 раз(а) в 9 сообщениях
|
Re: РУОФФ Адреса и оффсеты
0xE4BAB0 BA
0xE4C45C GA
0x7EDB30 SendPacket
|
|
|
Пользователь сказал cпасибо:
|
|
27.05.2017, 20:45
|
#1349
|
|
|
|
Разведчик
|
 Регистрация: 05.10.2010
 Сообщений: 25
 Популярность: 10
 Сказал(а) спасибо: 4
Поблагодарили 0 раз(а) в 0 сообщениях
|
Re: РУОФФ Адреса и оффсеты
гении шарящие в дебрях оффсетов адаптируйте под западные земли офа пожалуйства
<FoxBotOffsets xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<FreezeFunction>00EF8344</FreezeFunction>
<FreezeFunction>0044C4A0</FreezeFunction>
<FreezeFunction>0044C4A2</FreezeFunction>
<FreezeFlag>00EC836C</FreezeFlag>
<GameRun>00EFFDAC</GameRun>
<HostPlayerStruct>34</HostPlayerStruct>
<PlayerName>700</PlayerName>
<PlayerHP>4CC</PlayerHP>
<PlayerMP>4D0</PlayerMP>
<PlayerMaxHP>520</PlayerMaxHP>
<PlayerMaxMP>524</PlayerMaxMP>
<PlayerTargetID>5A4</PlayerTargetID>
<TargetMobHP>128</TargetMobHP>
<TargetMobMaxHP>17C</TargetMobMaxHP>
<HPPotionCD>03C</HPPotionCD>
<MPPotionCD>AF4</MPPotionCD>
<PetStruct>044</PetStruct>
<PetSlotID>8</PetSlotID>
<PetHPPrc>1C</PetHPPrc>
<PetHP>38</PetHP>
</FoxBotOffsets>
|
|
|
28.05.2017, 20:00
|
#1350
|
|
|
|
Разведчик
|
 Регистрация: 03.11.2011
 Сообщений: 11
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 8 раз(а) в 4 сообщениях
|
Re: РУОФФ Адреса и оффсеты
таймер 0x00E6AD64
frieze flag 0x00E4C948
ChatStart 0x00E54DF8
|
|
|
2 пользователя(ей) сказали cпасибо:
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Заявление об ответственности / Список мошенников
Часовой пояс GMT +4, время: 09:02.
|
 |