[C#] Enigma.D3 menu

User Tag List

Page 58 of 63 FirstFirst ... 8545556575859606162 ... LastLast
Results 856 to 870 of 940
  1. #856
    SeregaZver's Avatar Member
    Reputation
    1
    Join Date
    Mar 2018
    Posts
    3
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    can't understand how it works , include not working .

    [C#] Enigma.D3
  2. #857
    enigma32's Avatar Legendary
    Reputation
    912
    Join Date
    Jan 2013
    Posts
    551
    Thanks G/R
    4/738
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by ZenDraL View Post
    Hey Enigma, I've been using the changes from you map hack to modify my application. Was wondering if you would be able to include a fix for the attribute cache or maybe some hints on how to get it working? Thanks.
    It's probably having a hard time getting the AttributeDescriptors. Not in the public source yet (present in MapHack):
    Code:
    DataSegment.cs
    public AttributeDescriptor[] AttributeDescriptors 
        => Memory.Reader.Read<AttributeDescriptor>(MemoryContext.Current.ImageBase + SymbolTable.Current.DataSegment.AttributeDescriptors, SymbolTable.Current.DataSegment.AttributeDescriptorsCount);
    
    SymbolTable.X64.cs
    DataSegment.AttributeDescriptors = 0x00000000021dfd50;
    DataSegment.AttributeDescriptorsCount = 0x000005bb;
    Hope it helps.

  3. Thanks ZenDraL (1 members gave Thanks to enigma32 for this useful post)
  4. #858
    ZenDraL's Avatar Member CoreCoins Purchaser
    Reputation
    4
    Join Date
    Jun 2012
    Posts
    18
    Thanks G/R
    7/3
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thank you very much!!

  5. #859
    Skeetss's Avatar Member
    Reputation
    5
    Join Date
    Jan 2009
    Posts
    125
    Thanks G/R
    3/0
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Do they do RPM/WPM/other handle checks? I've never messed around with anything Blizzard so I figured I'd play around with your library to get my feet wet. I usually just gut the RPM/WPM templates and replace them with calls to my own kernel framework, but before I do I wanted to see if I even need to for D3.

  6. #860
    enigma32's Avatar Legendary
    Reputation
    912
    Join Date
    Jan 2013
    Posts
    551
    Thanks G/R
    4/738
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Skeetss View Post
    Do they do RPM/WPM/other handle checks? I've never messed around with anything Blizzard so I figured I'd play around with your library to get my feet wet. I usually just gut the RPM/WPM templates and replace them with calls to my own kernel framework, but before I do I wanted to see if I even need to for D3.
    No idea. I'm guessing no.



    New branch available
    GitHub - Enigma32/Enigma.D3 at post-obfuscation-patchwork

    I do not recommend anyone to use it, it's a mess and I will not provide support!
    But at least it's there for whatever it's worth.

  7. Thanks johnbl, Skeetss, d2k2 (3 members gave Thanks to enigma32 for this useful post)
  8. #861
    ZenDraL's Avatar Member CoreCoins Purchaser
    Reputation
    4
    Join Date
    Jun 2012
    Posts
    18
    Thanks G/R
    7/3
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thanks for this!!

    Not sure how much trouble it would be to restore SNOFiles and HotkeyPreferences but I would be really happy to see these come back if possible.

  9. #862
    D3Macro's Avatar Member
    Reputation
    2
    Join Date
    Feb 2018
    Posts
    6
    Thanks G/R
    0/1
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thank you for posting the updated code enigma!

    I second SNOFiles and HotKeyPreferences. I have an application that was using ApplicationModel, but I can find most things using DataSegment.ObjectManager.

  10. #863
    owen654321's Avatar Member
    Reputation
    9
    Join Date
    Mar 2017
    Posts
    39
    Thanks G/R
    4/8
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I ended up reverse engineering your map hack. You're a genius, I just have to say. I'm not sure how you figured out what you did as quickly as you did. BTW, the reason that attributes don't seem to work consistently is that I don't think you can index fast attribute groups directly (by groupId) anymore. I'm having to go through all the FastAttribGroups to find the one with the correct ID. (Please note this may make it work by having some strange side effect just by enumerating through via the allocator.

    FastAttribGroup fastAttribGroup = null;
    foreach (var grp in (Container<FastAttribGroup>)ctx.DataSegment.ObjectManager.FastAttrib.FastAttribG roups)
    {
    if (grp != null && grp.ID == groupId)
    {
    fastAttribGroup = grp;
    break;
    }
    }

    I bet I can cache this lookup, but fixing the lookup-by-groupId let me read all the attributes again properly.

    Your original (new) code tries a lookup directly by groupId (as an indexer), which seems to return the wrong group (is this an intentional change on Blizz's part I wonder?)

    FastAttribGroup fastAttribGroup = ((Container<FastAttribGroup>)ctx.DataSegment.ObjectManager.FastAttrib.FastAttrib Groups)[groupId];

    I'd love to work with you and help you with this project in any way I can. I can't do what you've done with figuring out the obfuscation, but I have everything working as it was before (minus a few things that were nice but sometimes flakey, like LevelAreaName). I have it so every class can go through any dynamic rift or grift and complete it fairly well (i.e. Mapping algorithms), dodge danger using the appropriate class-specific skills, use teleport/dashing strike/bloodrush for navigation or to escape danger, inventory tracking, basic utility macros like starpact timing and auto-creation and tracking number of rathma mages, projectile motion projections and basic dodging algorithms, auto-locust and haunt - a pretty broad range. I'd be happy to show you what I've built based on your hard work. If I ever make a dime from it (not super likely and not in the cards), some of that money would certainly head your way!

    Unfortunately I never tried to compete with TurboHud so my features do not overlap at all with theirs - and they did an awesome job at what they did... there was no way I needed to rebuild or mimick any of his/their hard work.

    Anyway, props and many thanks to you.

  11. #864
    d2k2's Avatar Active Member
    Reputation
    30
    Join Date
    Jul 2015
    Posts
    130
    Thanks G/R
    57/22
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    when and/or how often i have to use the Symbolpatcher? i hope the Symbolpatcher will be seperated from the maphack project in future.

  12. #865
    Skeetss's Avatar Member
    Reputation
    5
    Join Date
    Jan 2009
    Posts
    125
    Thanks G/R
    3/0
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by d2k2 View Post
    when and/or how often i have to use the Symbolpatcher? i hope the Symbolpatcher will be seperated from the maphack project in future.
    It gets called in Enigma.D3.Bootloader::App->CreateMemoryContext when the worker thread is spawned.

  13. #866
    enigma32's Avatar Legendary
    Reputation
    912
    Join Date
    Jan 2013
    Posts
    551
    Thanks G/R
    4/738
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by d2k2 View Post
    when and/or how often i have to use the Symbolpatcher? i hope the Symbolpatcher will be seperated from the maphack project in future.
    Once per D3 process. But it might yield incorrect result when ran during D3 initialization. I have no good way of knowing when it's done, so I just hope for exception rather than finding a bad address, then retry

    Yea, I intend to extract it.

  14. Thanks d2k2 (1 members gave Thanks to enigma32 for this useful post)
  15. #867
    d2k2's Avatar Active Member
    Reputation
    30
    Join Date
    Jul 2015
    Posts
    130
    Thanks G/R
    57/22
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thx a lot for your Updates Enigma.

    Maybe the SymbolPatcher should be executed by the framework internally after creating the MemoryContext Instance. But i guess we need it aswell as public function just in case (probably to update LevelArea offset everytime a new game is created?)

    I hope the remaining offsets (Hotkeys, Applicationloopcount, SnoFiles, LevelArea ,..) in Symboltable.DataSegment can be updated aswell? I need them :>

  16. #868
    d2k2's Avatar Active Member
    Reputation
    30
    Join Date
    Jul 2015
    Posts
    130
    Thanks G/R
    57/22
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Maybe you can update some offsets in SymbolTable (also need add ImageBase Reference in DataSegment Class)

    DataSegment.HotkeyPreferences = 0x1EF8730;
    DataSegment.ApplicationLoopCount = 0x216C2A4;
    DataSegment.SNOFiles = 0x2168690;

    ------------------------------------

    since this patch the LevelArea is crypted aswell. i used it to detect if the Player is inside a Rift (LootRun) or Grift (TieredLootRun)


    For Example when player was in Rift or Grift Level 1, MemoryContext.Current.DataSegment.LevelArea.LevelAreaSNO was returning this value:

    SnoLevelArea.X1_LR_Level_01 // 288482

    Now i can not Use LevelArea anymore. I was trying to use this:

    var current_LevelAreaSNO = MemoryContext.Current.DataSegment.ObjectManager.Scenes.FirstOrDefault(x => x.SSceneID == LocalACD.SSceneID).LevelAreaSNO;
    but the result is different. it returns me the name of the LevelArea instead the SNO with Number of Level the player is inside.

    Anyone has an idea how to detect that the player is in a rift? maybe by checking for specific UI controls elements as "dirty" solution?
    Last edited by d2k2; 03-15-2018 at 07:19 PM.

  17. Thanks ZenDraL (1 members gave Thanks to d2k2 for this useful post)
  18. #869
    ZenDraL's Avatar Member CoreCoins Purchaser
    Reputation
    4
    Join Date
    Jun 2012
    Posts
    18
    Thanks G/R
    7/3
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    You are in a rift if WorldSNO is one of these 288454, 288685, 288687, 288798, 288800, 288802, 288804, 288810, 288814, 288816
    You can use attribute InTieredLootRunLevel to tell if you are in a GR and InTieredChallengeRift to tell if you are in a challenge rift.

    Edit in case anyone comes back to look for this:

    You can lookup the WorldSNO from Worlds using the SWorldID on the local player's ACD.
    Last edited by ZenDraL; 03-16-2018 at 06:00 PM.

  19. Thanks d2k2 (1 members gave Thanks to ZenDraL for this useful post)
  20. #870
    d2k2's Avatar Active Member
    Reputation
    30
    Join Date
    Jul 2015
    Posts
    130
    Thanks G/R
    57/22
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by ZenDraL View Post
    You are in a rift if WorldSNO is one of these 288454, 288685, 288687, 288798, 288800, 288802, 288804, 288810, 288814, 288816
    You can use attribute InTieredLootRunLevel to tell if you are in a GR and InTieredChallengeRift to tell if you are in a challenge rift.
    How you read the WorldSNO? Over Localdata.WorldSNO or ObjectManager.Worlds ? I will test it later if both work same. I had some trouble with the Localdata (after i updated the address. its not yet uptodate in the framework ) yesterday, maybe the structure changed?


    Thx a lot for your suggestion. I will keep them in mind. I will try to use first less parts of the framework (no Localdata, no LevelArea), so i dont depend on them. I will try to detect it over the UIManager:

    Code:
    //get Greater Rift Level/Tier
    A_Collection.Environment.Areas.GreaterRift_Tier = (int) A_Collection.Me.HeroGlobals.LocalACD.GetAttributeValue(AttributeId.InTieredLootRunLevel) + 1;
    
    //Detect if in Rift
    //this Method does not need access to LocalData or LevelArea. Only UIManager needed
    A_Collection.Me.HeroStates.isInRift = T_D3UI.UIElement.isVisible("Root.NormalLayer.eventtext_bkgrnd.eventtext_region.stackpanel.rift_wrapper");
    
    //Detect if in Greater Rift
    A_Collection.Me.HeroStates.isInGreaterRift = A_Collection.Me.HeroStates.isInRift && A_Collection.Environment.Areas.GreaterRift_Tier > 0;
    Last edited by d2k2; 03-16-2018 at 07:26 AM.

Similar Threads

  1. [Hack] Enigma TriggerBot - AutoIT
    By Zolyrica in forum Overwatch Exploits|Hacks
    Replies: 9
    Last Post: 09-12-2016, 02:37 PM
  2. [Release] [C#] 1.0.8.16603 Enigma.D3
    By enigma32 in forum Diablo 3 Memory Editing
    Replies: 33
    Last Post: 05-16-2015, 01:40 PM
  3. Enigma's Smartcast Manager
    By da_bizkit in forum League of Legends
    Replies: 3
    Last Post: 10-22-2012, 02:11 PM
  4. request Blue suede boots -> enigma boots
    By Geico in forum WoW ME Questions and Requests
    Replies: 0
    Last Post: 12-27-2007, 05:40 AM
All times are GMT -5. The time now is 07:37 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