-
Member
Need a hint:
--[Cooldowns]--
-> Base: 0x2E36A30 = type value? [ Int / UInt / Float ] & Default Value [ 0 or max time]?
-
-
Member
Thank you!
-
Member
guys, i am using Namreebs dumper, but looks like i cant get some functions like UnitReaction.
intended address is 0x19FA270.
params are unitBaseAddress1 and unitBaseAddress2.
am i doing something wrong or are some functions unavailable?
-
Member
Originally Posted by
fofgogjoj
guys, i am using Namreebs dumper, but looks like i cant get some functions like UnitReaction.
intended address is 0x19FA270.
params are unitBaseAddress1 and unitBaseAddress2.
am i doing something wrong or are some functions unavailable?
if you want reaction, you can compare FactionTemplate.
get faction_template by id from WoW.tools | Database browser
then comapre
Code:
def FactionReaction(id1,id2):
if not(id1 in WOW_FACTION.faction_template and id2 in WOW_FACTION.faction_template):
return "neutral"
faction_src= WOW_FACTION.faction_template[id1]
faction_dst= WOW_FACTION.faction_template[id2]
if (faction_dst[2] & faction_src[4]) != 0:
return "hostile"
for faction_src_enemy in faction_src[5:9]:
if faction_src_enemy==0:
break
if faction_src_enemy==faction_dst[0]:
return "hostile"
if (faction_dst[2] & faction_src[3]) != 0:
return "Friendly"
for faction_src_friend in faction_src[9:13]:
if faction_src_friend==0:
break
if faction_src_friend==faction_dst[0]:
return "Friendly"
if faction_src[2] & faction_dst[3] != 0:
return "Friendly"
for faction_dst_friend in faction_dst[9:13]:
if faction_dst_friend==0:
break
if faction_dst_friend==faction_src[0]:
return "Friendly"
return WOW_FACTION.reaction[(faction_src[1] & 0x2000) != 0 and 1 or 3]
python code
-
Post Thanks / Like - 2 Thanks
-
Member
Originally Posted by
yezack
if you want reaction, you can compare FactionTemplate.
get faction_template by id from
WoW.tools | Database browser
then comapre
Code:
def FactionReaction(id1,id2):
if not(id1 in WOW_FACTION.faction_template and id2 in WOW_FACTION.faction_template):
return "neutral"
faction_src= WOW_FACTION.faction_template[id1]
faction_dst= WOW_FACTION.faction_template[id2]
if (faction_dst[2] & faction_src[4]) != 0:
return "hostile"
for faction_src_enemy in faction_src[5:9]:
if faction_src_enemy==0:
break
if faction_src_enemy==faction_dst[0]:
return "hostile"
if (faction_dst[2] & faction_src[3]) != 0:
return "Friendly"
for faction_src_friend in faction_src[9:13]:
if faction_src_friend==0:
break
if faction_src_friend==faction_dst[0]:
return "Friendly"
if faction_src[2] & faction_dst[3] != 0:
return "Friendly"
for faction_dst_friend in faction_dst[9:13]:
if faction_dst_friend==0:
break
if faction_dst_friend==faction_src[0]:
return "Friendly"
return WOW_FACTION.reaction[(faction_src[1] & 0x2000) != 0 and 1 or 3]
python code
i think this is an interesting solution if you cannot get a reaction using a function. i thought about parsing the wowhead, but your solution for this would be better.
-
Contributor
Avid Ailurophile
Originally Posted by
yezack
if you want reaction, you can compare FactionTemplate.
get faction_template by id from
WoW.tools | Database browser
then comapre
Code:
def FactionReaction(id1,id2):
if not(id1 in WOW_FACTION.faction_template and id2 in WOW_FACTION.faction_template):
return "neutral"
faction_src= WOW_FACTION.faction_template[id1]
faction_dst= WOW_FACTION.faction_template[id2]
if (faction_dst[2] & faction_src[4]) != 0:
return "hostile"
for faction_src_enemy in faction_src[5:9]:
if faction_src_enemy==0:
break
if faction_src_enemy==faction_dst[0]:
return "hostile"
if (faction_dst[2] & faction_src[3]) != 0:
return "Friendly"
for faction_src_friend in faction_src[9:13]:
if faction_src_friend==0:
break
if faction_src_friend==faction_dst[0]:
return "Friendly"
if faction_src[2] & faction_dst[3] != 0:
return "Friendly"
for faction_dst_friend in faction_dst[9:13]:
if faction_dst_friend==0:
break
if faction_dst_friend==faction_src[0]:
return "Friendly"
return WOW_FACTION.reaction[(faction_src[1] & 0x2000) != 0 and 1 or 3]
python code
Came up with similar solution in c# as I don't call functions directly and was absolutely bombing reading tables right from wow (parsed table to a JSON class list xD)
-
Member
anyone use BuyTrainerService? i think the address is 0x1878410 and the parameter is just the index. this does not work. maybe someone in your bot uses learning spells.
-
Established Member
Code:
const uint64_t TrainerFilterServiceType = 0x3118408;
const uint64_t TrainerFilterAvailable = 0x1;
const uint64_t TrainerFilterUnavailable = 0x2;
const uint64_t TrainerFilterUsed = 0x0;
const uint64_t TrainerFilterNumServices = 0x3118400;
const uint64_t TrainerBuyAllFilteredServices = 0x1879F50; // int64 ()
const uint64_t TrainerBuyServices = 0x1879FD0; // int64 (uint32 index)
-
Post Thanks / Like - 1 Thanks
fofgogjoj (1 members gave Thanks to oiramario for this useful post)
-
Member
Originally Posted by
oiramario
Code:
const uint64_t TrainerFilterServiceType = 0x3118408;
const uint64_t TrainerFilterAvailable = 0x1;
const uint64_t TrainerFilterUnavailable = 0x2;
const uint64_t TrainerFilterUsed = 0x0;
const uint64_t TrainerFilterNumServices = 0x3118400;
const uint64_t TrainerBuyAllFilteredServices = 0x1879F50; // int64 ()
const uint64_t TrainerBuyServices = 0x1879FD0; // int64 (uint32 index)
thank you very much, the address works! now i will see why my address is incorrect and how to get to yours.