[classic][Cata][4.4.0.54481] offset dump menu

User Tag List

Results 1 to 3 of 3
  1. #1
    klumpen's Avatar Active Member
    Reputation
    28
    Join Date
    Apr 2007
    Posts
    79
    Thanks G/R
    32/17
    Trade Feedback
    2 (100%)
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    [classic][Cata][4.4.0.54481] offset dump

    Haven't had the chance to test out all of the values yet. About an ~80/20 split between sigs and hardcoded offsets.

    Code:
    pub mod wow_classic_4_4_0_54481 {
        pub const CLIENT_VERSION: &str = "4.4.0.54481";
    
        pub struct Addon;
        impl Addon {
            pub const COUNT: usize = 0x3708C78;
        }
    
        pub struct ObjectManagerEntry {
            pub next: Pointer64<ObjectManagerEntry>,
            pub guid: GUID,
            pub address: Pointer64<Object>,
        }
        impl ObjectManagerEntry {
        }
    
        pub struct Player {
            pub vmt: Address,
            _pad_to_0x10: [u8; 0x8],
            pub r#type: u8,
            _pad_to_0x18: [u8; 0x7],
            pub guid: GUID,
            _pad_to_0xDC: [u8; 0xB4],
            pub dynamic_flag: u32,
            _pad_to_0x148: [u8; 0x68],
            pub position: Position,
            _pad_to_0x158: [u8; 0x4],
            pub rotation: f32,
            pub pitch: f32,
            _pad_to_0x500: [u8; 0x3A0],
            pub unit_info_ptr: Pointer64<UnitInfo>,
            pub display_id: u32,
            _pad_to_0x6E8: [u8; 0x1DC],
            pub cast_id: u32,
            _pad_to_0x710: [u8; 0x24],
            pub cast_start: u32,
            pub cast_end: u32,
            pub chan_id: u32,
            _pad_to_0x720: [u8; 0x4],
            pub chan_start: u32,
            pub chan_end: u32,
            _pad_to_0x8C0: [u8; 0x198],
            pub aura_table_1: Address,
            pub aura_table_2: Address,
            _pad_to_0xD75D: [u8; 0xCE8D],
            pub class: u8,
            _pad_to_0xD790: [u8; 0x32],
            pub in_combat_flag: u32,
            pub unit_flag_one: u32,
            _pad_to_0xED88: [u8; 0x15F0],
            pub health_current: u32,
            _pad_to_0xEEC0: [u8; 0x134],
            pub health_max: u32,
            _pad_to_0xEF80: [u8; 0xBC],
            pub target: GUID,
            _pad_to_0xEFB4: [u8; 0x24],
            pub race: u8,
            _pad_to_0xEFB7: [u8; 0x2],
            pub gender: u8,
            pub power_type: u8,
            _pad_to_0xEFC0: [u8; 0x7],
            pub level: u8,
            _pad_to_0xEFE4: [u8; 0x23],
            pub faction: u32,
            _pad_to_0xF010: [u8; 0x28],
            pub mount_id: u32,
            _pad_to_0xF208: [u8; 0x1F4],
            pub power_current: u32,
            _pad_to_0xF230: [u8; 0x24],
            pub power_max: u32,
            _pad_to_0x14000: [u8; 0x4DCC],
            pub inventory_count: u32,
        }
        impl Player {
        }
    
        pub struct Globals;
        impl Globals {
            pub const BAG_GUID: usize = 0x37072C0;
            pub const CHAR_SELECT: usize = 0x35E79BD;
            pub const CORPSE_POSITION: usize = 0x30F0AE0;
            pub const CVAR_BASE: usize = 0x36AFEC8;
            pub const DIALOG_WINDOW_OWNER_GUID: usize = 0x335E850;
            pub const FOCUS_GUID: usize = 0x335E838;
            pub const FRAMESCRIPT_REGISTERFUNC: usize = 0x335DEB8;
            pub const GAME_TIME: usize = 0x335E290;
            pub const GET_PARTY_INFO_ACTIVE_PARTY: usize = 0x36B08C8;
            pub const IN_GAME_STATUS: usize = 0x36AF2B0;
            pub const KEY_BINDINGS: usize = 0x30D58D8;
            pub const LAST_ENEMY_GUID: usize = 0x335E818;
            pub const LAST_FRIENDLY_GUID: usize = 0x335E828;
            pub const LAST_TARGET_GUID: usize = 0x335E808;
            pub const LOADING_SCREEN: usize = 0x32E1FF8;
            pub const LOADING_SCREEN_TAXI_SPLINES: usize = 0x3324F30;
            pub const LOGIN_SCREEN: usize = 0x35E8618;
            pub const LOOT_WINDOW: usize = 0x36B0B54;
            pub const MOUSEOVER_GUID: usize = 0x36AF2B8;
            pub const NUM_CHARACTERS: usize = 0x35E79E0;
            pub const PET_GUID: usize = 0x36B09D8;
            pub const PLAYER_GUID: usize = 0x3597DF0;
            pub const PLAYER_NAME: usize = 0x30C1318;
            pub const TARGET_GUID: usize = 0x335E7F8;
            pub const ZONE_ID: usize = 0x36AF1B0;
        }
    
        pub struct Aura {
            _pad_to_0x88: [u8; 0x88],
            pub spell_id: u32,
            _pad_to_0xB0: [u8; 0x24],
            pub size: u32,
        }
        impl Aura {
        }
    
        pub struct Keybinding {
            _pad_to_0x18: [u8; 0x18],
            pub next: Pointer64<Keybinding>,
            _pad_to_0x30: [u8; 0x10],
            pub key: Pointer64<ReprCString>,
            _pad_to_0x40: [u8; 0x8],
            pub action: Pointer64<ReprCString>,
        }
        impl Keybinding {
        }
    
        pub struct Keybindings {
            _pad_to_0x18: [u8; 0x18],
            pub next: Address,
            _pad_to_0x30: [u8; 0x10],
            pub key: Address,
            _pad_to_0x40: [u8; 0x8],
            pub action: Address,
        }
        impl Keybindings {
            pub const BASE: usize = 0x30D58D8;
        }
    
        pub struct Runes {
            pub start_time: u32,
            _pad_to_0x20: [u8; 0x1C],
            pub end_time: u32,
            _pad_to_0x48: [u8; 0x24],
            pub default_type: u32,
            _pad_to_0x60: [u8; 0x14],
            pub rune_type: u32,
        }
        impl Runes {
            pub const BASE: usize = 0x36E41A0;
        }
    
        pub struct Actionbar;
        impl Actionbar {
            pub const CURRENT_PAGE: usize = 0x36BB164;
            pub const FIRST_SLOT: usize = 0x36BA960;
        }
    
        pub struct UnitInfo {
            _pad_to_0x30: [u8; 0x30],
            pub r#type: u8,
            _pad_to_0x34: [u8; 0x3],
            pub family: u8,
            _pad_to_0x38: [u8; 0x3],
            pub rank: u8,
            _pad_to_0xE8: [u8; 0xAF],
            pub gather_type: u8,
            _pad_to_0x120: [u8; 0x37],
            pub name: Pointer64<ReprCString>,
        }
        impl UnitInfo {
        }
    
        pub struct GameObject {
            pub vmt: Address,
            _pad_to_0x10: [u8; 0x8],
            pub r#type: u8,
            _pad_to_0x18: [u8; 0x7],
            pub guid: GUID,
            _pad_to_0xA0: [u8; 0x78],
            pub flags: u32,
            _pad_to_0x108: [u8; 0x64],
            pub position: Position,
            _pad_to_0x148: [u8; 0x34],
            pub name: Pointer64<GameObjectName>,
            _pad_to_0x210: [u8; 0xC0],
            pub owner: GUID,
        }
        impl GameObject {
        }
    
        pub struct Unit {
            pub vmt: Address,
            _pad_to_0x10: [u8; 0x8],
            pub r#type: u8,
            _pad_to_0x18: [u8; 0x7],
            pub guid: GUID,
            _pad_to_0xDC: [u8; 0xB4],
            pub dynamic_flag: u32,
            _pad_to_0x148: [u8; 0x68],
            pub position: Position,
            _pad_to_0x158: [u8; 0x4],
            pub rotation: f32,
            pub pitch: f32,
            _pad_to_0x500: [u8; 0x3A0],
            pub unit_info_ptr: Pointer64<UnitInfo>,
            pub display_id: u32,
            _pad_to_0x6E8: [u8; 0x1DC],
            pub cast_id: u32,
            _pad_to_0x710: [u8; 0x24],
            pub cast_start: u32,
            pub cast_end: u32,
            pub chan_id: u32,
            _pad_to_0x720: [u8; 0x4],
            pub chan_start: u32,
            pub chan_end: u32,
            _pad_to_0x8C0: [u8; 0x198],
            pub aura_table_1: Address,
            pub aura_table_2: Address,
            _pad_to_0xD75D: [u8; 0xCE8D],
            pub class: u8,
            _pad_to_0xD790: [u8; 0x32],
            pub in_combat_flag: u32,
            pub unit_flag_one: u32,
            _pad_to_0xED88: [u8; 0x15F0],
            pub health_current: u32,
            _pad_to_0xEEC0: [u8; 0x134],
            pub health_max: u32,
            _pad_to_0xEF80: [u8; 0xBC],
            pub target: GUID,
            _pad_to_0xEFB4: [u8; 0x24],
            pub race: u8,
            _pad_to_0xEFB7: [u8; 0x2],
            pub gender: u8,
            pub power_type: u8,
            _pad_to_0xEFC0: [u8; 0x7],
            pub level: u8,
            _pad_to_0xEFE4: [u8; 0x23],
            pub faction: u32,
            _pad_to_0xF010: [u8; 0x28],
            pub mount_id: u32,
            _pad_to_0xF208: [u8; 0x1F4],
            pub power_current: u32,
            _pad_to_0xF230: [u8; 0x24],
            pub power_max: u32,
        }
        impl Unit {
        }
    
        pub struct Container {
            _pad_to_0x6D8: [u8; 0x6D8],
            pub count: u32,
            pub items: u32,
        }
        impl Container {
        }
    
        pub struct Cooldown {
            pub last_cooldown: Address,
            pub next_cooldown: Address,
            pub spell_id: u32,
            pub item_id: u32,
            pub tick_time: u32,
            pub recovery_start: u32,
            pub recovery_time: u32,
            pub category_id: u32,
            pub category_start: u32,
            pub category_time: u32,
            _pad_to_0x38: [u8; 0x8],
            pub global_id: u32,
            pub global_time: u32,
            pub global_start: u32,
        }
        impl Cooldown {
            pub const BASE: usize = 0x30E9450;
        }
    
        pub struct Spellbook;
        impl Spellbook {
            pub const BASE: usize = 0x36AF6C8;
            pub const COUNT: usize = 0x36AF6C0;
            pub const PET_BASE: usize = 0x36AF6E8;
            pub const PET_COUNT: usize = 0x36AF6E0;
        }
    
        pub struct Battleground;
        impl Battleground {
            pub const FINISHED: usize = 0x36B2A68;
            pub const INFO: usize = 0x30F9700;
            pub const WINNER: usize = 0x36B2A6C;
        }
    
        pub struct Item {
            pub vmt: Address,
            _pad_to_0x10: [u8; 0x8],
            pub r#type: u8,
            _pad_to_0x18: [u8; 0x7],
            pub guid: GUID,
            _pad_to_0x150: [u8; 0x128],
            pub id: u32,
            _pad_to_0x178: [u8; 0x24],
            pub owner: GUID,
            pub container: GUID,
            _pad_to_0x1B8: [u8; 0x20],
            pub stack_count: u32,
            _pad_to_0x1CC: [u8; 0x10],
            pub durability_current: u32,
            pub durability_max: u32,
            _pad_to_0x1E0: [u8; 0xC],
            pub flag: u32,
            _pad_to_0x2F4: [u8; 0x110],
            pub enchant_id: u32,
            pub enchant_expiry: u32,
        }
        impl Item {
        }
    
        pub struct MacroManager;
        impl MacroManager {
            pub const BASE: usize = 0x30FBCC8;
        }
    
        pub struct PlayerNameCache {
            _pad_to_0x8: [u8; 0x8],
            pub len: u32,
            _pad_to_0x10: [u8; 0x4],
            pub arr: Address,
        }
        impl PlayerNameCache {
            pub const BASE: usize = 0x32F1C10;
        }
    
        pub struct CombatLog;
        impl CombatLog {
            pub const EVENT_TYPE: usize = 0x35F2EB0;
            pub const EVENTS: usize = 0x30EACC0;
        }
    
        pub struct GameObjectName {
            _pad_to_0xE0: [u8; 0xE0],
            pub name: Pointer64<ReprCString>,
        }
        impl GameObjectName {
        }
    
        pub struct Quest;
        impl Quest {
            pub const BASE: usize = 0x36C2370;
            pub const CURRENT: usize = 0x36E5624;
            pub const NUM: usize = 0x36C2190;
            pub const NUM_CHOICES: usize = 0x36F4C30;
            pub const REWARD: usize = 0x36F4C38;
            pub const TITLE: usize = 0x36F0770;
        }
    
        pub struct Cvar {
            _pad_to_0x8: [u8; 0x8],
            pub value: Pointer64<ReprCString>,
            _pad_to_0x40: [u8; 0x30],
            pub desc: Pointer64<ReprCString>,
            _pad_to_0x50: [u8; 0x8],
            pub key: Pointer64<ReprCString>,
        }
        impl Cvar {
            pub const BASE: usize = 0x36AFEC8;
        }
    
        pub struct Screen {
            pub width: u16,
            pub height: u16,
        }
        impl Screen {
            pub const BASE: usize = 0x30D4AC0;
        }
    
        pub struct UnitStats {
            _pad_to_0xDA40: [u8; 0xDA40],
            pub mainhand_speed: u32,
            pub offhand_speed: u32,
            pub strength: u32,
            pub agility: u32,
            pub stamina: u32,
            pub intellect: u32,
            pub spirit: u32,
            _pad_to_0xDA84: [u8; 0x28],
            pub armor: u32,
            _pad_to_0xDA8C: [u8; 0x4],
            pub fire_resistance: u32,
            pub nature_resistance: u32,
            pub frost_resistance: u32,
            pub shadow_resistance: u32,
            pub arcane_resistance: u32,
            _pad_to_0xF484: [u8; 0x19E4],
            pub expertise: f32,
            pub block_chance: f32,
            _pad_to_0xF494: [u8; 0x8],
            pub parry_chance: f32,
            _pad_to_0xF49C: [u8; 0x4],
            pub melee_crit_chance: f32,
            pub ranged_crit_chance: f32,
            pub spell_crit_chance: f32,
            pub unk_2: f32,
            _pad_to_0x10B1C: [u8; 0x1670],
            pub defense_rating: u32,
            _pad_to_0x10B24: [u8; 0x4],
            pub unk_1: f32,
            _pad_to_0x10B2C: [u8; 0x4],
            pub melee_hit_rating: u32,
            pub ranged_hit_rating: u32,
            pub spell_hit_rating: u32,
            pub melee_crit_rating: u32,
            pub ranged_crit_rating: u32,
            pub spell_crit_rating: u32,
            _pad_to_0x10B50: [u8; 0xC],
            pub resilience_defense_rating: u32,
            pub resilience_offense_rating: u32,
            _pad_to_0x10B5C: [u8; 0x4],
            pub melee_haste_rating: u32,
            pub ranged_haste_rating: u32,
            pub spell_haste_rating: u32,
        }
        impl UnitStats {
        }
    
        pub struct Camera {
            _pad_to_0x10: [u8; 0x10],
            pub position: Position,
            pub matrix: [f32; 0x9],
            pub field_of_view: f32,
        }
        impl Camera {
            pub const BASE: usize = 0x35739E0;
            pub const OFFSET: usize = 0x3878;
        }
    
        pub struct Object {
            pub vmt: Address,
            _pad_to_0x10: [u8; 0x8],
            pub r#type: u8,
            _pad_to_0x18: [u8; 0x7],
            pub guid: GUID,
        }
        impl Object {
        }
    
        pub struct ObjectManager {
            pub max: u32,
            _pad_to_0x8: [u8; 0x4],
            pub arr: Address,
            pub count: u32,
            _pad_to_0x60: [u8; 0x4C],
            pub zone_name: Pointer64<ReprCString>,
            pub subzone_name: Pointer64<ReprCString>,
            _pad_to_0x140: [u8; 0xD0],
            pub unk_1: u32,
            _pad_to_0x160: [u8; 0x1C],
            pub map_id: u32,
            _pad_to_0x240: [u8; 0xDC],
            pub unk_2: u32,
        }
        impl ObjectManager {
            pub const BASE: usize = 0x364F970;
        }
    
        pub struct Inventory {
            pub equipment_first: u32,
            _pad_to_0x110: [u8; 0x10C],
            pub equipment_last: u32,
            _pad_to_0x1E0: [u8; 0xCC],
            pub bag_slot1: u32,
            _pad_to_0x1F0: [u8; 0xC],
            pub bag_slot2: u32,
            _pad_to_0x200: [u8; 0xC],
            pub bag_slot3: u32,
            _pad_to_0x210: [u8; 0xC],
            pub bag_slot4: u32,
            _pad_to_0x230: [u8; 0x1C],
            pub backpack_first: u32,
            _pad_to_0x320: [u8; 0xEC],
            pub backpack_last: u32,
            _pad_to_0x3B0: [u8; 0x8C],
            pub bank_slot_first: u32,
            _pad_to_0x560: [u8; 0x1AC],
            pub bank_slot_last: u32,
            _pad_to_0x570: [u8; 0xC],
            pub bank_bag1: u32,
            _pad_to_0x580: [u8; 0xC],
            pub bank_bag2: u32,
            _pad_to_0x590: [u8; 0xC],
            pub bank_bag3: u32,
            _pad_to_0x5A0: [u8; 0xC],
            pub bank_bag4: u32,
            _pad_to_0x5B0: [u8; 0xC],
            pub bank_bag5: u32,
            _pad_to_0x5C0: [u8; 0xC],
            pub bank_bag6: u32,
            _pad_to_0x5D0: [u8; 0xC],
            pub bank_bag7: u32,
        }
        impl Inventory {
        }
    
        pub struct Map;
        impl Map {
            pub const MINIMAP_SUBZONE_TEXT: usize = 0x36AE508;
            pub const SUBZONE_TEXT: usize = 0x36AE500;
            pub const ZONE_TEXT: usize = 0x36AE4F8;
        }
    
        pub struct ActivePlayer {
            pub vmt: Address,
            _pad_to_0x10: [u8; 0x8],
            pub r#type: u8,
            _pad_to_0x18: [u8; 0x7],
            pub guid: GUID,
            _pad_to_0xDC: [u8; 0xB4],
            pub dynamic_flag: u32,
            _pad_to_0x148: [u8; 0x68],
            pub position: Position,
            _pad_to_0x158: [u8; 0x4],
            pub rotation: f32,
            pub pitch: f32,
            _pad_to_0x500: [u8; 0x3A0],
            pub unit_info_ptr: Pointer64<UnitInfo>,
            pub display_id: u32,
            _pad_to_0x6E8: [u8; 0x1DC],
            pub cast_id: u32,
            _pad_to_0x710: [u8; 0x24],
            pub cast_start: u32,
            pub cast_end: u32,
            pub chan_id: u32,
            _pad_to_0x720: [u8; 0x4],
            pub chan_start: u32,
            pub chan_end: u32,
            _pad_to_0x8C0: [u8; 0x198],
            pub aura_table_1: Address,
            pub aura_table_2: Address,
            _pad_to_0xD75D: [u8; 0xCE8D],
            pub class: u8,
            _pad_to_0xD790: [u8; 0x32],
            pub in_combat_flag: u32,
            pub unit_flag_one: u32,
            _pad_to_0xE668: [u8; 0xED0],
            pub xp: u32,
            _pad_to_0xED88: [u8; 0x71C],
            pub health_current: u32,
            _pad_to_0xEEC0: [u8; 0x134],
            pub health_max: u32,
            _pad_to_0xEF80: [u8; 0xBC],
            pub target: GUID,
            _pad_to_0xEFB4: [u8; 0x24],
            pub race: u8,
            _pad_to_0xEFB7: [u8; 0x2],
            pub gender: u8,
            pub power_type: u8,
            _pad_to_0xEFC0: [u8; 0x7],
            pub level: u8,
            _pad_to_0xEFE4: [u8; 0x23],
            pub faction: u32,
            _pad_to_0xF010: [u8; 0x28],
            pub mount_id: u32,
            _pad_to_0xF208: [u8; 0x1F4],
            pub power_current: u32,
            _pad_to_0xF230: [u8; 0x24],
            pub power_max: u32,
            _pad_to_0xFF10: [u8; 0xCDC],
            pub money: u32,
            _pad_to_0xFF24: [u8; 0x10],
            pub next_level_xp: u32,
            _pad_to_0x14000: [u8; 0x40D8],
            pub inventory_count: u32,
        }
        impl ActivePlayer {
        }
    }
    Enjoy!

    Edit: I goofed. Posted the offset dump off of the beta build, not the most recent version of wow_classic. Updated to match.
    Last edited by klumpen; 05-01-2024 at 05:38 AM.

    [classic][Cata][4.4.0.54481] offset dump
  2. Thanks Razzue (1 members gave Thanks to klumpen for this useful post)
  3. #2
    Razzue's Avatar Contributor Avid Ailurophile

    CoreCoins Purchaser Authenticator enabled
    Reputation
    389
    Join Date
    Jun 2017
    Posts
    598
    Thanks G/R
    191/275
    Trade Feedback
    2 (100%)
    Mentioned
    14 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by klumpen View Post
    Haven't had the chance to test out all of the values yet. About an ~80/20 split between sigs and hardcoded offsets.

    Code:
    pub mod wow_classic_4_4_0_54481 {
        pub const CLIENT_VERSION: &str = "4.4.0.54481";
    
        pub struct Actionbar;
        impl Actionbar {
            pub const CURRENT_PAGE: usize = 0x37B5184;
            pub const FIRST_SLOT: usize = 0x37B4980;
        }
    
        pub struct UnitInfo {
            _pad_to_0x30: [u8; 0x30],
            pub r#type: u8,
            _pad_to_0x34: [u8; 0x3],
            pub family: u8,
            _pad_to_0x38: [u8; 0x3],
            pub rank: u8,
            _pad_to_0xE8: [u8; 0xAF],
            pub gather_type: u8,
            _pad_to_0x120: [u8; 0x37],
            pub name: Pointer<String>,
        }
        impl UnitInfo { }
    
        pub struct Cooldown {
            pub last_cooldown: Address,
            pub next_cooldown: Address,
            pub spell_id: u32,
            pub item_id: u32,
            pub tick_time: u32,
            pub recovery_start: u32,
            pub recovery_time: u32,
            pub category_id: u32,
            pub category_start: u32,
            pub category_time: u32,
            _pad_to_0x38: [u8; 0x8],
            pub global_id: u32,
            pub global_time: u32,
            pub global_start: u32,
        }
        impl Cooldown {
            pub const BASE: usize = 0x31E3450;
        }
    
        pub struct Spellbook;
        impl Spellbook {
            pub const BASE: usize = 0x37A96E8;
            pub const COUNT: usize = 0x37A96E0;
            pub const PET_BASE: usize = 0x37A9708;
            pub const PET_COUNT: usize = 0x37A9700;
        }
    
        pub struct Container {
            _pad_to_0x6D8: [u8; 0x6D8],
            pub count: u32,
            pub items: u32,
        }
        impl Container { }
    
        pub struct Camera {
            _pad_to_0x10: [u8; 0x10],
            pub position: Position,
            pub matrix: [f32; 0x9],
            pub field_of_view: f32,
        }
        impl Camera {
            pub const BASE: usize = 0x366D9E0;
            pub const OFFSET: usize = 0x3878;
        }
    
        pub struct ObjectManagerEntry {
            pub next: Pointer<ObjectManagerEntry>,
            pub guid: GUID,
            pub address: Pointer<Object>,
        }
        impl ObjectManagerEntry { }
    
        pub struct Player {
            pub vmt: Address,
            _pad_to_0x10: [u8; 0x8],
            pub r#type: u8,
            _pad_to_0x18: [u8; 0x7],
            pub guid: GUID,
            _pad_to_0xDC: [u8; 0xB4],
            pub dynamic_flag: u32,
            _pad_to_0x148: [u8; 0x68],
            pub position: Position,
            _pad_to_0x158: [u8; 0x4],
            pub rotation: f32,
            pub pitch: f32,
            _pad_to_0x500: [u8; 0x3A0],
            pub unit_info_ptr: Pointer<UnitInfo>,
            pub display_id: u32,
            _pad_to_0x6E8: [u8; 0x1DC],
            pub cast_id: u32,
            _pad_to_0x710: [u8; 0x24],
            pub cast_start: u32,
            pub cast_end: u32,
            pub chan_id: u32,
            _pad_to_0x720: [u8; 0x4],
            pub chan_start: u32,
            pub chan_end: u32,
            _pad_to_0x8C0: [u8; 0x198],
            pub aura_table_1: Address,
            pub aura_table_2: Address,
            _pad_to_0xD75D: [u8; 0xCE8D],
            pub class: u8,
            _pad_to_0xD790: [u8; 0x32],
            pub in_combat_flag: u32,
            pub unit_flag_one: u32,
            _pad_to_0xED88: [u8; 0x15F0],
            pub health_current: u32,
            _pad_to_0xEEC0: [u8; 0x134],
            pub health_max: u32,
            _pad_to_0xEF80: [u8; 0xBC],
            pub target: GUID,
            _pad_to_0xEFB4: [u8; 0x24],
            pub race: u8,
            _pad_to_0xEFB7: [u8; 0x2],
            pub gender: u8,
            pub power_type: u8,
            _pad_to_0xEFC0: [u8; 0x7],
            pub level: u8,
            _pad_to_0xEFE4: [u8; 0x23],
            pub faction: u32,
            _pad_to_0xF010: [u8; 0x28],
            pub mount_id: u32,
            _pad_to_0xF208: [u8; 0x1F4],
            pub power_current: u32,
            _pad_to_0xF230: [u8; 0x24],
            pub power_max: u32,
            _pad_to_0x14000: [u8; 0x4DCC],
            pub inventory_count: u32,
        }
        impl Player { }
    
        pub struct Battleground;
        impl Battleground {
            pub const FINISHED: usize = 0x37ACA88;
            pub const INFO: usize = 0x31F3700;
            pub const WINNER: usize = 0x37ACA8C;
        }
    
        pub struct Aura {
            _pad_to_0x88: [u8; 0x88],
            pub spell_id: u32,
            _pad_to_0xB0: [u8; 0x24],
            pub size: u32,
        }
        impl Aura { }
    
        pub struct CombatLog;
        impl CombatLog {
            pub const EVENT_TYPE: usize = 0x36ECEC0;
            pub const EVENTS: usize = 0x31E4CC0;
        }
    
        pub struct UnitStats {
            _pad_to_0xDA40: [u8; 0xDA40],
            pub mainhand_speed: u32,
            pub offhand_speed: u32,
            pub strength: u32,
            pub agility: u32,
            pub stamina: u32,
            pub intellect: u32,
            pub spirit: u32,
            _pad_to_0xDA84: [u8; 0x28],
            pub armor: u32,
            _pad_to_0xDA8C: [u8; 0x4],
            pub fire_resistance: u32,
            pub nature_resistance: u32,
            pub frost_resistance: u32,
            pub shadow_resistance: u32,
            pub arcane_resistance: u32,
            _pad_to_0xF484: [u8; 0x19E4],
            pub expertise: f32,
            pub block_chance: f32,
            _pad_to_0xF494: [u8; 0x8],
            pub parry_chance: f32,
            _pad_to_0xF49C: [u8; 0x4],
            pub melee_crit_chance: f32,
            pub ranged_crit_chance: f32,
            pub spell_crit_chance: f32,
            pub unk_2: f32,
            _pad_to_0x10B1C: [u8; 0x1670],
            pub defense_rating: u32,
            _pad_to_0x10B24: [u8; 0x4],
            pub unk_1: f32,
            _pad_to_0x10B2C: [u8; 0x4],
            pub melee_hit_rating: u32,
            pub ranged_hit_rating: u32,
            pub spell_hit_rating: u32,
            pub melee_crit_rating: u32,
            pub ranged_crit_rating: u32,
            pub spell_crit_rating: u32,
            _pad_to_0x10B50: [u8; 0xC],
            pub resilience_defense_rating: u32,
            pub resilience_offense_rating: u32,
            _pad_to_0x10B5C: [u8; 0x4],
            pub melee_haste_rating: u32,
            pub ranged_haste_rating: u32,
            pub spell_haste_rating: u32,
        }
        impl UnitStats { }
    
        pub struct ActivePlayer {
            pub vmt: Address,
            _pad_to_0x10: [u8; 0x8],
            pub r#type: u8,
            _pad_to_0x18: [u8; 0x7],
            pub guid: GUID,
            _pad_to_0xDC: [u8; 0xB4],
            pub dynamic_flag: u32,
            _pad_to_0x148: [u8; 0x68],
            pub position: Position,
            _pad_to_0x158: [u8; 0x4],
            pub rotation: f32,
            pub pitch: f32,
            _pad_to_0x500: [u8; 0x3A0],
            pub unit_info_ptr: Pointer<UnitInfo>,
            pub display_id: u32,
            _pad_to_0x6E8: [u8; 0x1DC],
            pub cast_id: u32,
            _pad_to_0x710: [u8; 0x24],
            pub cast_start: u32,
            pub cast_end: u32,
            pub chan_id: u32,
            _pad_to_0x720: [u8; 0x4],
            pub chan_start: u32,
            pub chan_end: u32,
            _pad_to_0x8C0: [u8; 0x198],
            pub aura_table_1: Address,
            pub aura_table_2: Address,
            _pad_to_0xD75D: [u8; 0xCE8D],
            pub class: u8,
            _pad_to_0xD790: [u8; 0x32],
            pub in_combat_flag: u32,
            pub unit_flag_one: u32,
            _pad_to_0xE668: [u8; 0xED0],
            pub xp: u32,
            _pad_to_0xED88: [u8; 0x71C],
            pub health_current: u32,
            _pad_to_0xEEC0: [u8; 0x134],
            pub health_max: u32,
            _pad_to_0xEF80: [u8; 0xBC],
            pub target: GUID,
            _pad_to_0xEFB4: [u8; 0x24],
            pub race: u8,
            _pad_to_0xEFB7: [u8; 0x2],
            pub gender: u8,
            pub power_type: u8,
            _pad_to_0xEFC0: [u8; 0x7],
            pub level: u8,
            _pad_to_0xEFE4: [u8; 0x23],
            pub faction: u32,
            _pad_to_0xF010: [u8; 0x28],
            pub mount_id: u32,
            _pad_to_0xF208: [u8; 0x1F4],
            pub power_current: u32,
            _pad_to_0xF230: [u8; 0x24],
            pub power_max: u32,
            _pad_to_0xFF10: [u8; 0xCDC],
            pub money: u32,
            _pad_to_0xFF24: [u8; 0x10],
            pub next_level_xp: u32,
            _pad_to_0x14000: [u8; 0x40D8],
            pub inventory_count: u32,
        }
        impl ActivePlayer { }
    
        pub struct GameObjectName {
            _pad_to_0xE0: [u8; 0xE0],
            pub name: Pointer<String>,
        }
        impl GameObjectName { }
    
        pub struct Screen {
            pub width: u16,
            pub height: u16,
        }
        impl Screen {
            pub const BASE: usize = 0x31CEAC0;
        }
    
        pub struct Cvar {
            _pad_to_0x8: [u8; 0x8],
            pub value: Pointer<String>,
            _pad_to_0x40: [u8; 0x30],
            pub desc: Pointer<String>,
            _pad_to_0x50: [u8; 0x8],
            pub key: Pointer<String>,
        }
        impl Cvar {
            pub const BASE: usize = 0x37A9EE8;
        }
    
        pub struct PlayerNameCache {
            _pad_to_0x8: [u8; 0x8],
            pub len: u32,
            _pad_to_0x10: [u8; 0x4],
            pub arr: Address,
        }
        impl PlayerNameCache {
            pub const BASE: usize = 0x33EBC00;
        }
    
        pub struct Addon;
        impl Addon {
            pub const COUNT: usize = 0x3802C98;
        }
    
        pub struct Object {
            pub vmt: Address,
            _pad_to_0x10: [u8; 0x8],
            pub r#type: u8,
            _pad_to_0x18: [u8; 0x7],
            pub guid: GUID,
        }
        impl Object { }
    
        pub struct ObjectManager {
            pub max: u32,
            _pad_to_0x8: [u8; 0x4],
            pub arr: Address,
            pub count: u32,
            _pad_to_0x60: [u8; 0x4C],
            pub zone_name: Pointer<String>,
            pub subzone_name: Pointer<String>,
            _pad_to_0x140: [u8; 0xD0],
            pub unk_1: u32,
            _pad_to_0x160: [u8; 0x1C],
            pub map_id: u32,
            _pad_to_0x240: [u8; 0xDC],
            pub unk_2: u32,
        }
        impl ObjectManager {
            pub const BASE: usize = 0x3749980;
        }
    
        pub struct Keybinding {
            _pad_to_0x18: [u8; 0x18],
            pub next: Pointer<Keybinding>,
            _pad_to_0x30: [u8; 0x10],
            pub key: Pointer<String>,
            _pad_to_0x40: [u8; 0x8],
            pub action: Pointer<String>,
        }
        impl Keybinding { }
    
        pub struct Keybindings {
            _pad_to_0x18: [u8; 0x18],
            pub next: Address,
            _pad_to_0x30: [u8; 0x10],
            pub key: Address,
            _pad_to_0x40: [u8; 0x8],
            pub action: Address,
        }
        impl Keybindings {
            pub const BASE: usize = 0x31CF8D8;
        }
    
        pub struct Unit {
            pub vmt: Address,
            _pad_to_0x10: [u8; 0x8],
            pub r#type: u8,
            _pad_to_0x18: [u8; 0x7],
            pub guid: GUID,
            _pad_to_0xDC: [u8; 0xB4],
            pub dynamic_flag: u32,
            _pad_to_0x148: [u8; 0x68],
            pub position: Position,
            _pad_to_0x158: [u8; 0x4],
            pub rotation: f32,
            pub pitch: f32,
            _pad_to_0x500: [u8; 0x3A0],
            pub unit_info_ptr: Pointer<UnitInfo>,
            pub display_id: u32,
            _pad_to_0x6E8: [u8; 0x1DC],
            pub cast_id: u32,
            _pad_to_0x710: [u8; 0x24],
            pub cast_start: u32,
            pub cast_end: u32,
            pub chan_id: u32,
            _pad_to_0x720: [u8; 0x4],
            pub chan_start: u32,
            pub chan_end: u32,
            _pad_to_0x8C0: [u8; 0x198],
            pub aura_table_1: Address,
            pub aura_table_2: Address,
            _pad_to_0xD75D: [u8; 0xCE8D],
            pub class: u8,
            _pad_to_0xD790: [u8; 0x32],
            pub in_combat_flag: u32,
            pub unit_flag_one: u32,
            _pad_to_0xED88: [u8; 0x15F0],
            pub health_current: u32,
            _pad_to_0xEEC0: [u8; 0x134],
            pub health_max: u32,
            _pad_to_0xEF80: [u8; 0xBC],
            pub target: GUID,
            _pad_to_0xEFB4: [u8; 0x24],
            pub race: u8,
            _pad_to_0xEFB7: [u8; 0x2],
            pub gender: u8,
            pub power_type: u8,
            _pad_to_0xEFC0: [u8; 0x7],
            pub level: u8,
            _pad_to_0xEFE4: [u8; 0x23],
            pub faction: u32,
            _pad_to_0xF010: [u8; 0x28],
            pub mount_id: u32,
            _pad_to_0xF208: [u8; 0x1F4],
            pub power_current: u32,
            _pad_to_0xF230: [u8; 0x24],
            pub power_max: u32,
        }
        impl Unit { }
    
        pub struct Item {
            pub vmt: Address,
            _pad_to_0x10: [u8; 0x8],
            pub r#type: u8,
            _pad_to_0x18: [u8; 0x7],
            pub guid: GUID,
            _pad_to_0x150: [u8; 0x128],
            pub id: u32,
            _pad_to_0x178: [u8; 0x24],
            pub owner: GUID,
            pub container: GUID,
            _pad_to_0x1B8: [u8; 0x20],
            pub stack_count: u32,
            _pad_to_0x1CC: [u8; 0x10],
            pub durability_current: u32,
            pub durability_max: u32,
            _pad_to_0x1E0: [u8; 0xC],
            pub flag: u32,
            _pad_to_0x2F4: [u8; 0x110],
            pub enchant_id: u32,
            pub enchant_expiry: u32,
        }
        impl Item { }
    
        pub struct MacroManager;
        impl MacroManager {
            pub const BASE: usize = 0x31F5CC8;
        }
    
        pub struct Quest;
        impl Quest {
            pub const BASE: usize = 0x37BC390;
            pub const CURRENT: usize = 0x37DF644;
            pub const NUM: usize = 0x37BC1B0;
            pub const NUM_CHOICES: usize = 0x37EEC50;
            pub const REWARD: usize = 0x37EEC58;
            pub const TITLE: usize = 0x37EA790;
        }
    
        pub struct Inventory {
            pub equipment_first: u32,
            _pad_to_0x110: [u8; 0x10C],
            pub equipment_last: u32,
            _pad_to_0x1E0: [u8; 0xCC],
            pub bag_slot1: u32,
            _pad_to_0x1F0: [u8; 0xC],
            pub bag_slot2: u32,
            _pad_to_0x200: [u8; 0xC],
            pub bag_slot3: u32,
            _pad_to_0x210: [u8; 0xC],
            pub bag_slot4: u32,
            _pad_to_0x230: [u8; 0x1C],
            pub backpack_first: u32,
            _pad_to_0x320: [u8; 0xEC],
            pub backpack_last: u32,
            _pad_to_0x3B0: [u8; 0x8C],
            pub bank_slot_first: u32,
            _pad_to_0x560: [u8; 0x1AC],
            pub bank_slot_last: u32,
            _pad_to_0x570: [u8; 0xC],
            pub bank_bag1: u32,
            _pad_to_0x580: [u8; 0xC],
            pub bank_bag2: u32,
            _pad_to_0x590: [u8; 0xC],
            pub bank_bag3: u32,
            _pad_to_0x5A0: [u8; 0xC],
            pub bank_bag4: u32,
            _pad_to_0x5B0: [u8; 0xC],
            pub bank_bag5: u32,
            _pad_to_0x5C0: [u8; 0xC],
            pub bank_bag6: u32,
            _pad_to_0x5D0: [u8; 0xC],
            pub bank_bag7: u32,
        }
        impl Inventory { }
    
        pub struct Map;
        impl Map {
            pub const MINIMAP_SUBZONE_TEXT: usize = 0x37A8528;
            pub const SUBZONE_TEXT: usize = 0x37A8520;
            pub const ZONE_TEXT: usize = 0x37A8518;
        }
    
        pub struct Globals;
        impl Globals {
            pub const BAG_GUID: usize = 0x38012E0;
            pub const CHAR_SELECT: usize = 0x36E19D5;
            pub const CORPSE_POSITION: usize = 0x31EAAE0;
            pub const CVAR_BASE: usize = 0x37A9EE8;
            pub const DIALOG_WINDOW_OWNER_GUID: usize = 0x3458840;
            pub const FOCUS_GUID: usize = 0x3458828;
            pub const FRAMESCRIPT_REGISTERFUNC: usize = 0x3457EA8;
            pub const GAME_TIME: usize = 0x3458280;
            pub const GET_PARTY_INFO_ACTIVE_PARTY: usize = 0x37AA8E8;
            pub const IN_GAME_STATUS: usize = 0x37A92D0;
            pub const KEY_BINDINGS: usize = 0x31CF8D8;
            pub const LAST_ENEMY_GUID: usize = 0x3458808;
            pub const LAST_FRIENDLY_GUID: usize = 0x3458818;
            pub const LAST_TARGET_GUID: usize = 0x34587F8;
            pub const LOADING_SCREEN: usize = 0x33DBFE8;
            pub const LOADING_SCREEN_TAXI_SPLINES: usize = 0x341EF20;
            pub const LOGIN_SCREEN: usize = 0x36E2628;
            pub const LOOT_WINDOW: usize = 0x37AAB74;
            pub const MOUSEOVER_GUID: usize = 0x37A92D8;
            pub const NUM_CHARACTERS: usize = 0x36E19F8;
            pub const PET_GUID: usize = 0x37AA9F8;
            pub const PLAYER_GUID: usize = 0x3691E00;
            pub const PLAYER_NAME: usize = 0x31BB318;
            pub const TARGET_GUID: usize = 0x34587E8;
            pub const ZONE_ID: usize = 0x37A91D0;
        }
    
        pub struct GameObject {
            pub vmt: Address,
            _pad_to_0x10: [u8; 0x8],
            pub r#type: u8,
            _pad_to_0x18: [u8; 0x7],
            pub guid: GUID,
            _pad_to_0xA0: [u8; 0x78],
            pub flags: u32,
            _pad_to_0x108: [u8; 0x64],
            pub position: Position,
            _pad_to_0x148: [u8; 0x34],
            pub name: Pointer<GameObjectName>,
            _pad_to_0x210: [u8; 0xC0],
            pub owner: GUID,
        }
        impl GameObject { }
    
        pub struct Runes {
            pub start_time: u32,
            _pad_to_0x20: [u8; 0x1C],
            pub end_time: u32,
            _pad_to_0x48: [u8; 0x24],
            pub default_type: u32,
            _pad_to_0x60: [u8; 0x14],
            pub rune_type: u32,
        }
        impl Runes {
            pub const BASE: usize = 0x37DE1C0;
        }
    }
    Enjoy!
    Shit, beat me to it 👍 Can't add more rep sadly 🥲❤️
    "May all your bacon burn"

  4. Thanks goblin2kx (1 members gave Thanks to Razzue for this useful post)
  5. #3
    klumpen's Avatar Active Member
    Reputation
    28
    Join Date
    Apr 2007
    Posts
    79
    Thanks G/R
    32/17
    Trade Feedback
    2 (100%)
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Razzue View Post
    Shit, beat me to it 👍 Can't add more rep sadly 🥲❤️
    It's a team effort Haven't diffed against prior versions or blasted the binary with IDC labeling yet. Hint hint!

Similar Threads

  1. How To Use Offset Dump?
    By Cooldude in forum WoW Memory Editing
    Replies: 4
    Last Post: 01-08-2020, 02:01 PM
  2. [Selling] Classic Cata Mop CD Keys
    By raducu in forum World of Warcraft Buy Sell Trade
    Replies: 3
    Last Post: 01-25-2013, 10:11 AM
  3. WTS: Selling: 1 Cata key EU, 2 WOW Classic key EU, 1 wow TBC key EU.
    By flem in forum Members Only Accounts And CD Keys Buy Sell
    Replies: 2
    Last Post: 03-19-2011, 08:39 AM
  4. [Wow][4.0.0.11927][Cata Alpha Client] Info Dump Thread
    By Nesox in forum WoW Memory Editing
    Replies: 27
    Last Post: 06-21-2010, 07:47 AM
  5. 3.0.8 Offsets and dumps.
    By ramey in forum WoW Memory Editing
    Replies: 6
    Last Post: 01-24-2009, 08:39 AM
All times are GMT -5. The time now is 02:22 PM. Powered by vBulletin® Version 4.2.3
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2024 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search