[C#] Enigma.D3 menu

Shout-Out

User Tag List

Page 17 of 63 FirstFirst ... 131415161718192021 ... LastLast
Results 241 to 255 of 940
  1. #241
    ileandros's Avatar Member
    Reputation
    1
    Join Date
    Jul 2012
    Posts
    60
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Enigma, i created a way to see if the hero is moving or not but do you have a way already within the framework?

    [C#] Enigma.D3
  2. #242
    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 ileandros View Post
    Enigma, i created a way to see if the hero is moving or not but do you have a way already within the framework?
    Just a boolean? Actor.x3DC != 0 => IsMoving

    there are plenty of ways, there is also the ActorMovement struct related to Actor with lots of goodies.

  3. #243
    ileandros's Avatar Member
    Reputation
    1
    Join Date
    Jul 2012
    Posts
    60
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by enigma32 View Post
    Just a boolean? Actor.x3DC != 0 => IsMoving

    there are plenty of ways, there is also the ActorMovement struct related to Actor with lots of goodies.
    Ok thanks.

    Another thing I want to ask. I am enumerating all actors, getting the monsters and want to get data for each monster.
    I take their position etc but there are some things I can't seem to return.
    How do I take the monsters offset.
    I am at work now. I will post you what I am doing as soon as I get home.

  4. #244
    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 ileandros View Post
    Ok thanks.

    Another thing I want to ask. I am enumerating all actors, getting the monsters and want to get data for each monster.
    I take their position etc but there are some things I can't seem to return.
    How do I take the monsters offset.
    I am at work now. I will post you what I am doing as soon as I get home.
    Hm, going to need an example yes, have no idea what offset you're talking about. If you want the "offset" to the entire monster/whatever, you have .Address on the MemoryObject class.

  5. #245
    ileandros's Avatar Member
    Reputation
    1
    Join Date
    Jul 2012
    Posts
    60
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by enigma32 View Post
    Hm, going to need an example yes, have no idea what offset you're talking about. If you want the "offset" to the entire monster/whatever, you have .Address on the MemoryObject class.
    Here are the infos i want to get from each monster:
    Code:
    ExpandableContainer<Actor> actors = Engine.Current.ObjectManager.x910_RActors;
    
                for (short i = 0; i < actors.x10C_Count; i++)
                {
                    Actor CActor = actors[i];
                    ActorCommonData acd = ActorCommonDataHelper.GetAcd(CActor.x088_AcdId);
    
                    // check if it is a monster and there is a data
                    if (acd != null && acd.x184_ActorType == ActorType.Monster)
                    {
                        //Offset actor.Address?
                        //x Foot
                        //y Foot
                        //z Foot
    
    
    
                    }
                }
    Last edited by ileandros; 06-20-2014 at 07:55 AM.

  6. #246
    azgul's Avatar Member
    Reputation
    8
    Join Date
    Jun 2012
    Posts
    107
    Thanks G/R
    3/3
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Code:
    public float x0D0_WorldPosX { get { return Field<float>(0x0D0); } }
    public float x0D4_WorldPosY { get { return Field<float>(0x0D4); } }
    public float x0D8_WorldPosZ { get { return Field<float>(0x0D8); } }

  7. #247
    ileandros's Avatar Member
    Reputation
    1
    Join Date
    Jul 2012
    Posts
    60
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by azgul View Post
    Code:
    public float x0D0_WorldPosX { get { return Field<float>(0x0D0); } }
    public float x0D4_WorldPosY { get { return Field<float>(0x0D4); } }
    public float x0D8_WorldPosZ { get { return Field<float>(0x0D8); } }
    hmmm. I dont think this is what i am searching...

  8. #248
    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 ileandros View Post
    hmmm. I dont think this is what i am searching...
    You're on your own then, that fits perfectly with what you described. Those are for the ACD though, if you for some reason must have it on Actor, well it's still the same names and super easy to figure out.
    Code:
    public float x0A4_WorldPosX { get { return Field<float>(0x0A4); } }
    public float x0A8_WorldPosY { get { return Field<float>(0x0A8); } }
    public float x0AC_WorldPosZ { get { return Field<float>(0x0AC); } }

  9. #249
    egris's Avatar Member
    Reputation
    1
    Join Date
    Sep 2009
    Posts
    7
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Actor data from MPQ:

    Code:
        public class ActorSNO : MemoryObject
        {
            public const int SizeOf = 0x368;
    
            public ActorSNO(ProcessMemory memory, int address)
                : base(memory, address) { }
    
            public SNO x000_ActorSnoId
            {
                get
                {
                    var snoid = Field<int>(0x000);
                    return new SNO(snoid, Enums.SnoGroupId.Actor);
                }
            }
            public int x00C { get { return Field<int>(0x00C); } }
            public ActorType x010_ActorType { get { return (ActorType)Field<int>(0x010); } }
            public SNO x014_AppearanceSnoId
            {
                get
                {
                    var snoid = Field<int>(0x014);
                    return new SNO(snoid, Enums.SnoGroupId.Appearance);
                }
            }
            public SNO x018_PhysMeshSnoId
            {
                get
                {
                    var snoid = Field<int>(0x018);
                    return new SNO(snoid, Enums.SnoGroupId.PhysMesh);
                }
            }
            public AxialCylinder x01C { get { return Field<AxialCylinder>(0x01C); } }
            public Sphere x030 { get { return Field<Sphere>(0x030); } }
            public AxisAlignedBoundingBox x040 { get { return Field<AxisAlignedBoundingBox>(0x040); } }
            private SerializeData x058_serTagMap { get { return Field<SerializeData>(0x058); } }
            //public TagMap x060_hTagMap { get { return Field<TagMap>(0x060); } }
            public SNO x068_AnimSetSnoId
            {
                get
                {
                    var snoid = Field<int>(0x068);
                    return new SNO(snoid, Enums.SnoGroupId.AnimSet);
                }
            }
            public SNO x06C_MonsterSnoId
            {
                get
                {
                    var snoid = Field<int>(0x06C);
                    return new SNO(snoid, Enums.SnoGroupId.Monster);
                }
            }
            private SerializeData x070_serMsgTriggeredEvents { get { return Field<SerializeData>(0x070); } }
            public int x078_MsgTriggeredEventCount { get { return Field<int>(0x078); } }
            public int x080_MsgTriggeredEventPtr { get { return Field<int>(0x080); } }
            public MsgTriggeredEvent[] x084_arMsgTriggeredEvents { get { return Field<MsgTriggeredEvent>(x070_serMsgTriggeredEvents.x00_Offset, x070_serMsgTriggeredEvents.x04_Size / MsgTriggeredEvent.SizeOf); } }
            public Vector3D x088 { get { return Field<Vector3D>(0x088); } }
            public WeightedLook[] x094_Looks { get { return Field<WeightedLook>(0x094, 8); } }
            public SNO x2B4_PhysicsSnoId
            {
                get
                {
                    var snoid = Field<int>(0x2B4);
                    return new SNO(snoid, Enums.SnoGroupId.Physics);
                }
            }
            public int x2B8 { get { return Field<int>(0x2B8); } }
            public int x2BC { get { return Field<int>(0x2BC); } }
            public float x2C0 { get { return Field<float>(0x2C0); } }
            public float x2C4 { get { return Field<float>(0x2C4); } }
            public float x2C8 { get { return Field<float>(0x2C8); } }
            public ActorCollisionData x2CC_ActorCollisionData { get { return Field<ActorCollisionData>(0x2CC); } }
            public InventoryImages[] x310_InventoryImages { get { return Field<InventoryImages>(0x310, 6); } }
            public int x340_Image { get { return Field<int>(0x340); } }
            private SerializeData x350_serVOCastingNotes { get { return Field<SerializeData>(0x350); } }
            public string x348_CastingNotes { get { return Field(x350_serVOCastingNotes.x00_Offset, x350_serVOCastingNotes.x04_Size); } }
            private SerializeData x360_serVORole { get { return Field<SerializeData>(0x360); } }
            public string x358_VoiceOverRole { get { return Field(x360_serVORole.x00_Offset, x360_serVORole.x04_Size); } }
        }
    
        public class ActorCollisionData : MemoryObject
        {
            public const int SizeOf = 0x44;
    
            public ActorCollisionData(ProcessMemory memory, int address)
                : base(memory, address) { }
    
            public ActorCollisionFlags x00_ColFlags { get { return Field<ActorCollisionFlags>(0x00); } }
            public int x10 { get { return Field<int>(0x10); } }
            public AxialCylinder x14_Cylinder { get { return Field<AxialCylinder>(0x14); } }
            public AxisAlignedBoundingBox x28 { get { return Field<AxisAlignedBoundingBox>(0x28); } }
            public float x40 { get { return Field<float>(0x40); } }
        }
    
        public class ActorCollisionFlags : MemoryObject
        {
            public const int SizeOf = 0x10;
    
            public ActorCollisionFlags(ProcessMemory memory, int address)
                : base(memory, address) { }
    
            public int x00 { get { return Field<int>(0x00); } }
            public int x04 { get { return Field<int>(0x04); } }
            public int x08 { get { return Field<int>(0x08); } }
            public int x0C { get { return Field<int>(0x0C); } }
        }
    
        public class AxialCylinder : MemoryObject
        {
            public const int SizeOf = 0x14;
    
            public AxialCylinder(ProcessMemory memory, int address)
                : base(memory, address) { }
    
            public Vector3D x00_Position { get { return Field<Vector3D>(0x00); } }
            public float x0C_Ax1 { get { return Field<float>(0x0C); } }
            public float x10_Ax2 { get { return Field<float>(0x10); } }
        }
    
        public class Sphere : MemoryObject
        {
            public const int SizeOf = 0x10;
    
            public Sphere(ProcessMemory memory, int address)
                : base(memory, address) { }
    
            public Vector3D x00_Position { get { return Field<Vector3D>(0x00); } }
            public float x0C_Radius { get { return Field<float>(0x0C); } }
        }
    
        public class WeightedLook : MemoryObject
        {
            public const int SizeOf = 0x44;
    
            public WeightedLook(ProcessMemory memory, int address)
                : base(memory, address) { }
    
            public string LootLink { get { return Field(0x00, 64); } }
            public int x40 { get { return Field<int>(0x40); } }
        }
    
        public class InventoryImages : MemoryObject
        {
            public const int SizeOf = 0x08;
    
            public InventoryImages(ProcessMemory memory, int address)
                : base(memory, address) { }
    
            public int x00 { get { return Field<int>(0x00); } }
            public int x04 { get { return Field<int>(0x04); } }
        }

  10. #250
    ileandros's Avatar Member
    Reputation
    1
    Join Date
    Jul 2012
    Posts
    60
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Got it.

    Is there a way to get the spells attributes? Like cooldown, resource cost etc...??

  11. #251
    ileandros's Avatar Member
    Reputation
    1
    Join Date
    Jul 2012
    Posts
    60
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Can anyone lend me a hand.
    I have this loop here that will enumerate all acd, get the items, get their position and then do something. I want to exit the while loop as soon as the item is not there anymore but i cant seem to be able to get the items visibility.
    Code:
    var pt = System.Diagnostics.Stopwatch.StartNew();
                ExpandableContainer<Actor> actors = Engine.Current.ObjectManager.x910_RActors;
                for (short i = 0; i < actors.x10C_Count; i++)
                {
                    Actor currentActor = actors[i];
                    ActorCommonData acd = ActorCommonDataHelper.GetAcd(currentActor.x088_AcdId);
                    if (acd != null && acd.x184_ActorType == ActorType.Item)
                    {
                        if (BanList.IsItemInBanList(acd.x004_Name) == false)
                        {
                            if (Enigma.D3.Helpers.AttributeHelper.GetAttributeValue(acd, Enigma.D3.Enums.AttributeId.ItemQualityLevel) >= GlobalVars.ItemQualityLevel)
                            {
                                while (Distance.GetDistance(acd.x0D0_WorldPosX, acd.x0D4_WorldPosY, acd.x0D8_WorldPosZ) <= 40)
                                {
                                    SpellAndHeal.Healing();
                                    if(pt.Elapsed.TotalMilliseconds >= 5000){
                                        return;
                                    }
                                    if (ActorCommonDataHelper.GetLocalAcd().x188_Hitpoints < 1) //return if dead
                                    {
                                        return;
                                    }
                                    //How to exit if the item is not there anymore?
                                }
                            }
                        }
                    }
                }
    Any help how to get the item visibily to exit the while loop and move to the next actor?

    BTW i tried enumerate items but it get more complicated to get all the infos i need from them.
    Last edited by ileandros; 06-21-2014 at 07:05 PM.

  12. #252
    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 ileandros View Post
    Can anyone lend me a hand.
    I have this loop here that will enumerate all acd, get the items, get their position and then do something. I want to exit the while loop as soon as the item is not there anymore but i cant seem to be able to get the items visibility.
    Code:
    var pt = System.Diagnostics.Stopwatch.StartNew();
                ExpandableContainer<Actor> actors = Engine.Current.ObjectManager.x910_RActors;
                for (short i = 0; i < actors.x10C_Count; i++)
                {
                    Actor currentActor = actors[i];
                    ActorCommonData acd = ActorCommonDataHelper.GetAcd(currentActor.x088_AcdId);
                    if (acd != null && acd.x184_ActorType == ActorType.Item)
                    {
                        if (BanList.IsItemInBanList(acd.x004_Name) == false)
                        {
                            if (Enigma.D3.Helpers.AttributeHelper.GetAttributeValue(acd, Enigma.D3.Enums.AttributeId.ItemQualityLevel) >= GlobalVars.ItemQualityLevel)
                            {
                                while (Distance.GetDistance(acd.x0D0_WorldPosX, acd.x0D4_WorldPosY, acd.x0D8_WorldPosZ) <= 40)
                                {
                                    SpellAndHeal.Healing();
                                    if(pt.Elapsed.TotalMilliseconds >= 5000){
                                        return;
                                    }
                                    if (ActorCommonDataHelper.GetLocalAcd().x188_Hitpoints < 1) //return if dead
                                    {
                                        return;
                                    }
                                    //How to exit if the item is not there anymore?
                                }
                            }
                        }
                    }
                }
    Any help how to get the item visibily to exit the while loop and move to the next actor?

    BTW i tried enumerate items but it get more complicated to get all the infos i need from them.
    You have to get better at expressing yourself... What do you mean by visibility? How would an item be dead? And is your question how to break a loop or something completely different? What is your main goal? If you're trying to do what I'm thinking then you're doing it completely wrong.

  13. #253
    ileandros's Avatar Member
    Reputation
    1
    Join Date
    Jul 2012
    Posts
    60
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by enigma32 View Post
    You have to get better at expressing yourself... What do you mean by visibility? How would an item be dead? And is your question how to break a loop or something completely different? What is your main goal? If you're trying to do what I'm thinking then you're doing it completely wrong.
    Ye there is some code that shouldn't be there which can confuse. Return if our hero is dead. And apparently i am trying to do what you are thinking i am.
    I want to break as soon as the item is not on the ground anymore.

    I tried something like this Enigma.D3.Helpers.ActorCommonDataHelper.EnumerateItems().ToArray() but without succes.

  14. #254
    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 ileandros View Post
    Ye there is some code that shouldn't be there which can confuse. Return if our hero is dead. And apparently i am trying to do what you are thinking i am.
    I want to break as soon as the item is not on the ground anymore.

    I tried something like this Enigma.D3.Helpers.ActorCommonDataHelper.EnumerateItems().ToArray() but without succes.
    Most likely you want to know when you've picked an item up, do that by looking at ItemLocation in the ACD. Also when the item is gone from the "world", there will no longer be any Actor, be aware of that! And maybe look into the keywords "break" and "continue" if you don't know what those are already, maybe even "goto".

  15. #255
    ileandros's Avatar Member
    Reputation
    1
    Join Date
    Jul 2012
    Posts
    60
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by enigma32 View Post
    Most likely you want to know when you've picked an item up, do that by looking at ItemLocation in the ACD. Also when the item is gone from the "world", there will no longer be any Actor, be aware of that! And maybe look into the keywords "break" and "continue" if you don't know what those are already, maybe even "goto".
    Would you suggest this Enigma.D3.Helpers.ActorCommonDataHelper.EnumerateItems(). or the way i am using to enumerate items on the ground?
    Or is there a better way?

    I don't know good c# but i know programming in general. I dont need help in the structure i need help in writting. And i would never use goto, actually i don't know why this even exists cause it could easily cause memory leak. Guess microsoft big heads knows more about it.

    Edit:
    Enumeratin all items and returning their ItemLocation i see returns of Merchant, Stash, Inventory parts such as PlayerNeck etc, Pet and Socket.
    Which is the location of the ground and which of the inventory? That would help me in the while loop to exit automatically.
    Last edited by ileandros; 06-21-2014 at 07:37 PM.

Page 17 of 63 FirstFirst ... 131415161718192021 ... LastLast

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:53 AM. Powered by vBulletin® Version 4.2.3
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Google Authenticator verification provided by Two-Factor Authentication (Free) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search