-
Contributor
Did you ever get the Lua check working on 1.12.1? it looks like there a two different ones with different calling conventions:
Code:
int (__fastcall *)(char *, _DWORD, _DWORD) // Function1
int (__cdecl *)(char *, _DWORD, _DWORD) // Function2
it looks like the first one matches the 1.12.1 GetText function:
Code:
const char *__fastcall FrameScript_GetText(const char *, int, int)
so i assume its possible to get it working but ive yet to see anyone do it.
-
Post Thanks / Like - 1 Thanks
culino2 (1 members gave Thanks to danwins for this useful post)
-
Member
Originally Posted by
TOM_RUS
I see you guys are digging something I already did back in 2010, may be you can make some use of this stuff
warden.zip.
Thank you man too. Your job is really impressive.
-
Banned
[player object] + 0xB4C (4 bytes)
Can be used to determine if you have an active fishing bobber. I'm not exactly sure what it is but the 4 bytes get set whenever a cast successfully lands, otherwise they are zero. It's probably a pointer to the bobber but I'm not sure.
Also does anyone have a suggestion as to why my object manager isn't finding fishing bobbers? It finds everything else fine... Am I right in thinking that they are still GameObjects (object type 5) in Vanilla?
Edit: was a problem reading the displayid descriptor (no sleep ftw)
Last edited by luckruns0ut; 01-05-2017 at 11:24 PM.
-
Post Thanks / Like - 1 Thanks
Corthezz (1 members gave Thanks to luckruns0ut for this useful post)
-
Originally Posted by
luckruns0ut
Also does anyone have a suggestion as to why my object manager isn't finding fishing bobbers? It finds everything else fine... Am I right in thinking that they are still GameObjects (object type 5) in Vanilla?
I have not had any problems with fishing, I'm just checking GameObject == 5, GAMEOBJECT_DISPLAYID == 668 and GAMEOBJECT_STATE == 0.
Last edited by DarkLinux; 12-29-2016 at 05:18 PM.
-
Post Thanks / Like - 3 Thanks
-
Code:
ClientDB Zones 0x00C0E048
CurrentZoneID 0x00468580
Last edited by DarkLinux; 01-06-2017 at 03:41 PM.
-
Contributor
dbcs(not rebased)
Code:
00C0E06C g_animationDataDB
00C0E058 g_areaPOIDB
00C0E044 g_areaTableDB
00C0E030 g_areaTriggerDB
00C0E01C g_attackAnimKitsDB
00C0E004 g_attackAnimTypesDB
00C0DFF0 g_auctionHouseDB
00C0DFDC g_bankBagSlotPricesDB
00C0DFC8 g_cameraShakesDB
00C0DFB4 g_cfg_CategoriesDB
00C0DFA0 g_cfg_ConfigsDB
00C0DF28 g_characterFacialHairStylesDB
00C0DF8C g_charBaseInfoDB
00C0DF78 g_charHairGeosetsDB
00C0DF64 g_charSectionsDB
00C0DF50 g_charStartOutfitDB
00C0DF3C g_charVariationsDB
00C0DF14 g_chatChannelsDB
00C0DF00 g_chatProfanityDB
00C0DEEC g_chrClassesDB
00C0DED8 g_chrRacesDB
00C0DEC4 g_cinematicCameraDB
00C0DEB0 g_cinematicSequencesDB
00C0DE88 g_creatureDisplayInfoDB
00C0DE9C g_creatureDisplayInfoExtraDB
00C0DE74 g_creatureFamilyDB
00C0DE60 g_creatureModelDataDB
00C0DE4C g_creatureSoundDataDB
00C0DE38 g_creatureSpellDataDB
00C0DE24 g_creatureTypeDB
00C0DE10 g_deathThudLookupsDB
00C0DDFC g_durabilityCostsDB
00C0DDE8 g_durabilityQualityDB
00C0DDD4 g_emotesDB
00C0DD98 g_emotesTextDB
00C0DDC0 g_emotesTextDataDB
00C0DDAC g_emotesTextSoundDB
00C0DD84 g_environmentalDamageDB
00C0DD70 g_exhaustionDB
00C0DD48 g_factionDB
00C0DD5C g_factionGroupDB
00C0DD34 g_factionTemplateDB
00C0DD20 g_footprintTexturesDB
00C0DD0C g_footstepTerrainLookupDB
00C0DCF8 g_gameObjectArtKitDB
00C0DCE4 g_gameObjectDisplayInfoDB
00C0DCD0 g_gameTipsDB
00C0DCBC g_gMSurveyCurrentSurveyDB
00C0DCA8 g_gMSurveyQuestionsDB
00C0DC94 g_gMSurveySurveysDB
00C0DC80 g_gMTicketCategoryDB
00C0DC6C g_groundEffectDoodadDB
00C0DC58 g_groundEffectTextureDB
00C0DC44 g_helmetGeosetVisDataDB
00C0DC30 g_itemBagFamilyDB
00C0DC1C g_itemClassDB
00C0DC08 g_itemDisplayInfoDB
00C0DBF4 g_itemGroupSoundsDB
00C0DBE0 g_itemPetFoodDB
00C0DBCC g_itemRandomPropertiesDB
00C0DBB8 g_itemSetDB
00C0DB90 g_itemSubClassDB
00C0DBA4 g_itemSubClassMaskDB
00C0DB7C g_itemVisualEffectsDB
00C0DB68 g_itemVisualsDB
00C0DB40 g_languagesDB
00C0DB54 g_languageWordsDB
00C0DB2C g_lfgDungeonsDB
00CE9D60 g_lightDB
00CE9D88 g_lightFloatBandDB
00CE9D9C g_lightIntBandDB
00CE9D74 g_lightParamsDB
00CE9DB0 g_lightSkyboxDB
00C0DB18 g_liquidTypeDB
00C0DAF0 g_loadingScreenTaxiSplinesDB
00C0DB04 g_loadingScreensDB
00C0DADC g_lockDB
00C0DAC8 g_lockTypeDB
00C0DAB4 g_mailTemplateDB
00C0DAA0 g_mapDB
00C0DA8C g_materialDB
00C0DA64 g_nPCSoundsDB
00C0DA78 g_nameGenDB
00C0DA50 g_namesProfanityDB
00C0DA3C g_namesReservedDB
00C0DA28 g_packageDB
00C0DA14 g_pageTextMaterialDB
00C0DA00 g_paperDollItemFrameDB
00C0D9EC g_petLoyaltyDB
00C0D9D8 g_petPersonalityDB
00C0D9C4 g_questInfoDB
00C0D9B0 g_questSortDB
00C0D99C g_resistancesDB
00C0D988 g_serverMessagesDB
00C0D974 g_sheatheSoundLookupsDB
00C0D960 g_skillCostsDataDB
00C0D924 g_skillLineDB
00C0D94C g_skillLineAbilityDB
00C0D938 g_skillLineCategoryDB
00C0D910 g_skillRaceClassInfoDB
00C0D8FC g_skillTiersDB
00C0D8E8 g_soundAmbienceDB
00C0D8D4 g_soundEntriesDB
00C0D8C0 g_soundProviderPreferencesDB
00C0D8AC g_soundSamplePreferencesDB
00C0D898 g_soundWaterTypeDB
00C0D884 g_spamMessagesDB
00C0D780 g_spellDB
00C0D870 g_spellCastTimesDB
00C0D85C g_spellCategoryDB
00C0D848 g_spellChainEffectsDB
00C0D834 g_spellDispelTypeDB
00C0D820 g_spellDurationDB
00C0D80C g_spellEffectCameraShakesDB
00C0D7F8 g_spellFocusObjectDB
00C0D7E4 g_spellIconDB
00C0D7D0 g_spellItemEnchantmentDB
00C0D7BC g_spellMechanicDB
00C0D7A8 g_spellRadiusDB
00C0D794 g_spellRangeDB
00C0D76C g_spellShapeshiftFormDB
00C0D730 g_spellVisualDB
00C0D758 g_spellVisualEffectNameDB
00C0D744 g_spellVisualKitDB
00C0D71C g_stableSlotPricesDB
00C0D708 g_stationeryDB
00C0D6F4 g_stringLookupsDB
00C0D6E0 g_talentDB
00C0D6CC g_talentTabDB
00C0D6B8 g_taxiNodesDB
00C0D690 g_taxiPathDB
00C0D6A4 g_taxiPathNodeDB
00C0D67C g_terrainTypeDB
00C0D668 g_terrainTypeSoundsDB
00C0D654 g_transportAnimationDB
00C0D640 g_uISoundLookupsDB
00C0D618 g_unitBloodDB
00C0D62C g_unitBloodLevelsDB
00C0D604 g_vocalUISoundsDB
00C0D5DC g_weaponImpactSoundsDB
00C0D5C8 g_weaponSwingSounds2DB
00C0D5F0 g_wMOAreaTableDB
00C0D5B4 g_worldMapAreaDB
00C0D5A0 g_worldMapContinentDB
00C0D58C g_worldMapOverlayDB
00C0D578 g_worldSafeLocsDB
00C0D564 g_worldStateUIDB
00C0D550 g_zoneIntroMusicTableDB
00C0D53C g_zoneMusicDB
ida py rename script(not rebased)
Paste2.org - Viewing Paste xZKmbUFk
struct:
Code:
struct WowClientDB
{
void *m_records;
int m_numRecords;
void **m_recordsById;
int m_maxId;
int m_loaded;
};
Code:
struct AreaTableRec
{
int m_ID; // Unique ID
int m_map; // The map on which the area is located.
int m_parentAreaTable; // Refers the parent area if set.
signed int m_areaBit;
signed int m_flags;
int m_soundPreferences; // Sound settings when moving while in this area.
int m_soundPreferencesUnderwater; // Sound settings when moving in water while in this area.
int m_soundAmbience; // Background sounds — birds, falling leafs, etc. — playing when in this area.
int m_zoneMusic; // The background music when playing in this area.
int m_zoneIntroMusicTable; // Music played upon entering the area.
signed int m_explorationLevel; // The suggested character level for exploring this area.
const char* m_areaName_lang[8]; // The name of the area.
int m_areaName_flag;
int m_factionGroup; // References the faction group which owns this area.
int m_liquidType; // References the type of liquid to be found in this area.
signed int m_minElevation; // Lowest possible Z coordinate for this area.
float m_ambientMultiplier; // Modifier for character lighting.
int m_light; // References the type of lighting to be seen in this area.
};
struct WowClientDB<AreaTableRec>
{
AreaTableRec *m_records;
int m_numRecords;
AreaTableRec **m_recordsById;
int m_maxId;
int m_loaded;
};
Last edited by danwins; 01-02-2017 at 09:26 AM.
-
Post Thanks / Like - 3 Thanks
-
Member
Quick question: Is it considered safe to patch in a jump into CGxDeviceD3d__ISceneEnd for use on Elysium/Nostalrius?
I have read conflicting views on this, some say it's an address checked by (mangos) Warden while others say that it's safe because other applications like fraps or similar also do this.
-
Banned
If that's the same function you get at entry 42 in the vtable (EndScene), its definitely ok... If its not, its probably still ok (only two I've actually used when playing most are EndScene and Reset)
-
Banned
Check if unit is hostile towards another unit:
Code:
auto unitIsEnemy = reinterpret_cast<int(__thiscall*)(void* unit1, void* unit2)>(0x6061e0);
Will return 2 if they are enemies, 1 if they are friendly.
Can be used to determine if an enemy will aggro to you or not.
Edit:
I just got an account banned on nost-pvp by writing (xor ecx, 0x100) to 0x482ED3 (remove-afk). I spent a while ****ing with different things at that address but when I wrote those exact bytes, it banned me. The people who care about that info probably already know it, but just in case its useful to anyone
Last edited by luckruns0ut; 01-08-2017 at 10:31 PM.
-
Post Thanks / Like - 1 Thanks
tutrakan (1 members gave Thanks to luckruns0ut for this useful post)
-
Contributor
Thanks for the ban info.
Originally Posted by
luckruns0ut
Check if unit is hostile towards another unit:
Code:
auto unitIsEnemy = reinterpret_cast<int(__thiscall*)(void* unit1, void* unit2)>(0x6061e0);
Will return 2 if they are enemies, 1 if they are friendly.
Can be used to determine if an enemy will aggro to you or not
BTW, the function at 0x006061E0 returns the unit reaction:
Code:
enum ReputationRank
{
REP_HATED = 0,
REP_HOSTILE = 1,
REP_UNFRIENDLY = 2,
REP_NEUTRAL = 3,
REP_FRIENDLY = 4,
REP_HONORED = 5,
REP_REVERED = 6,
REP_EXALTED = 7
};
If you are looking for a "can attack", there is a function that returns bool at 0x00606980 with the same params/call.conv.
Last edited by tutrakan; 01-09-2017 at 05:48 PM.
-
Post Thanks / Like - 1 Thanks
luckruns0ut (1 members gave Thanks to tutrakan for this useful post)
-
Banned
Thanks, I already knew about UnitCanAttack but I intend on weighting my navmesh so that the pathfinding will attempt to avoid aggressive mobs. The other flags are useful, though.
Edit:
Current tick count is at 0xce8988. Not hard to find but I didn't find it posted
Last edited by luckruns0ut; 01-10-2017 at 03:53 PM.
-
Member
Does anybody happen to have a named idb for this patch? I ran BinDiff with patch 6.x, not the best results!
Slazer from the Elite group of Deathsoft
-
Corporal
Originally Posted by
Famous
Does anybody happen to have a named idb for this patch? I ran BinDiff with patch 6.x, not the best results!
Just use the 1.0.X.whatever alpha build with pdb as reference, it's pretty straightforward
-
Post Thanks / Like - 2 Thanks
tutrakan,
Famous (2 members gave Thanks to NotJuJuBoSc for this useful post)
-
Member
Hi guys I'm not sure how PQR works internally but is there any way to get it to work with this build(actually for elysium server)?
Here's an example of the needed offsets:
<CurrentWoWVersion>5875</CurrentWoWVersion>
<WoWVersionOffset>0x00837C0</WoWVersionOffset>
<PlayerName>0x827D88</PlayerName>
<PlayerClass>0x879E89</PlayerClass>
<GetCurrentKeyBoardFocus>0x9CE474</GetCurrentKeyBoardFocus>
<GameState>0x00B4B424</GameState>
<Lua_DoStringAddress>0x419210</Lua_DoStringAddress>
<Lua_GetLocalizedTextAddress>0x3225E0</Lua_GetLocalizedTextAddress>
<Detour>0xBF0F0</Detour>
<Overwritten>55 8B EC 81 EC F8 00 00 00</Overwritten>
I would appreciate any tip on the matter
-
Member
Originally Posted by
NotJuJuBoSc
Just use the 1.0.X.whatever alpha build with pdb as reference, it's pretty straightforward
Thanks, worked like a charm! Here's the source for anyone else interested (provided by jh16):
[WoW] Binary Collection (Release & PTR) ([WoW] Binary Collection (Release & PTR))
Slazer from the Elite group of Deathsoft