CVars in Dragonflight menu

User Tag List

Results 1 to 5 of 5
  1. #1
    Trioxygen's Avatar Member
    Reputation
    1
    Join Date
    Jan 2022
    Posts
    6
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    CVars in Dragonflight

    Has anyone figured out how CVars are stored in 10.0.0.46597

    They used to be a linked list (kind of like the object manager) with a pointer to the name and a pointer to the value. Pointer to the name still works, but having troubles finding out how to find the value. The next works (weirdly for about half of them)

    Code:
    const CVarOffset = 0x3497ef0;
    const FIRST = 0x10;
    const NAME = 0x20;
    
    let current = this.readMemory(FIRST, UINT64);
    
    const namePtr = readMemory<number>(this.handle, current + NAME, UINT64);
    const valuePtr = readMemory<number>(this.handle, namePtr - 0x60, UINT64);
    const name = this.readString(namePtr);
    const value = this.readString(valuePtr)
    
    const next = readMemory<number>(this.handle, current, UINT64); // etc
    Last edited by Trioxygen; 11-15-2022 at 12:50 AM. Reason: typo

    CVars in Dragonflight
  2. #2
    Razzue's Avatar Contributor Avid Ailurophile

    CoreCoins Purchaser Authenticator enabled
    Reputation
    379
    Join Date
    Jun 2017
    Posts
    588
    Thanks G/R
    186/268
    Trade Feedback
    2 (100%)
    Mentioned
    14 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Trioxygen View Post
    Has anyone figured out how CVars are stored in 10.0.0.46597

    They used to be a linked list (kind of like the object manager) with a pointer to the name and a pointer to the value. Pointer to the name still works, but having troubles finding out how to find the value. The next works (weirdly for about half of them)

    Code:
    const CVarOffset = 0x3497ef0;
    const FIRST = 0x10;
    const NAME = 0x20;
    
    let current = this.readMemory(FIRST, UINT64);
    
    const namePtr = readMemory<number>(this.handle, current + NAME, UINT64);
    const valuePtr = readMemory<number>(this.handle, namePtr - 0x60, UINT64);
    const name = this.readString(namePtr);
    const value = this.readString(valuePtr)
    
    const next = readMemory<number>(this.handle, current, UINT64); // etc
    I mean .. I haven't checked in retail quite yet, but in classic it seems it's stored in a pointer array (so not a linked list like OM)

    Will peek on retail later tonight though 🤔
    "May all your bacon burn"

  3. #3
    Razzue's Avatar Contributor Avid Ailurophile

    CoreCoins Purchaser Authenticator enabled
    Reputation
    379
    Join Date
    Jun 2017
    Posts
    588
    Thanks G/R
    186/268
    Trade Feedback
    2 (100%)
    Mentioned
    14 Post(s)
    Tagged
    0 Thread(s)
    After a quick dump/test, it seems my patterns are still accurate..
    Pointer array starting @ 7FF684ACEC00 [Game + 39CEC00]
    Pointers.JPG

    Auto loot cvar is still @ ( [Game + 39CEC00] + 14 * 0x8 )
    Though name and value offsets changed from classic
    Seems value is at 0x14, then name you can get via pointer from 0x50, or just read the string from 0x68
    AutoLoot.JPG

    No idea if that's what you were going for :shrug: and i don't think all of these are writable either (I know you can write to auto loot and ctm(0/1), but not sure how much I trust that)
    "May all your bacon burn"

  4. #4
    Trioxygen's Avatar Member
    Reputation
    1
    Join Date
    Jan 2022
    Posts
    6
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Razzue View Post
    After a quick dump/test, it seems my patterns are still accurate..
    Pointer array starting @ 7FF684ACEC00 [Game + 39CEC00]
    Pointers.JPG

    Auto loot cvar is still @ ( [Game + 39CEC00] + 14 * 0x8 )
    Though name and value offsets changed from classic
    Seems value is at 0x14, then name you can get via pointer from 0x50, or just read the string from 0x68
    AutoLoot.JPG

    No idea if that's what you were going for :shrug: and i don't think all of these are writable either (I know you can write to auto loot and ctm(0/1), but not sure how much I trust that)
    I will check later tonight. What I do is use a CVar to 'send' events from game to a fully out of process bot. Thanks a lot, will let you know.

  5. #5
    Thordekk's Avatar Member
    Reputation
    1
    Join Date
    Jan 2022
    Posts
    9
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    someone have idb named?

Similar Threads

  1. [Guide] Dragonflight level 60 to 66.4 in 33 minutes
    By Scumstation in forum World of Warcraft Guides
    Replies: 5
    Last Post: 12-08-2022, 02:03 PM
  2. Replies: 0
    Last Post: 06-22-2022, 12:29 PM
  3. [Selling] (US - Horde) Black Dragonflight Gold - Always in Stock!
    By Trollin in forum World of Warcraft Buy Sell Trade
    Replies: 0
    Last Post: 11-10-2012, 12:14 PM
  4. Block resurrection of the opposite faction in battle grounds
    By Matt in forum World of Warcraft Exploits
    Replies: 5
    Last Post: 06-08-2006, 03:19 AM
All times are GMT -5. The time now is 04:05 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