[AutoIt] Diablo 3 Click To Move, Interaction, Actor Handling. (Version 2) menu

Shout-Out

User Tag List

Page 6 of 21 FirstFirst ... 2345678910 ... LastLast
Results 76 to 90 of 302
  1. #76
    TKG's Avatar Member
    Reputation
    1
    Join Date
    Jun 2012
    Posts
    14
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by UnknOwned View Post
    I wouldnt care for using mpq's for string lists but i fully agree that a database is preferred when making navigation.
    Why not, doing an arraysearch is truly not my preferred solution. As with the rest of the SNO data, once you have the mechanism to read / apply patches it is quite simple to read the stl files and incorporate local names into the database of your choice. Special Credits go to D3Inferno.

    And as you said: a MPQ reader is a great tool for navigation/world/scene data as well. Could'nt work too much on it though , as job / family have priority ...

    [AutoIt] Diablo 3 Click To Move, Interaction, Actor Handling. (Version 2)
  2. #77
    chancity's Avatar Legendary
    CoreCoins Purchaser
    Reputation
    686
    Join Date
    Jun 2012
    Posts
    1,153
    Thanks G/R
    27/341
    Trade Feedback
    11 (55%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Why when I'm using the retrieve gold code does to come back false if I'm not in debug mode?

    Edit
    Found out that nomadmemory doesnt support 64bit as is.
    Last edited by chancity; 07-09-2012 at 10:10 AM.

  3. #78
    RagnaBaby's Avatar Member
    Reputation
    1
    Join Date
    May 2009
    Posts
    28
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Do anyone know a simple flag to check if I am in-game? or not in-menu?

    Thanks

  4. #79
    sarastrasza's Avatar Member
    Reputation
    1
    Join Date
    Jun 2009
    Posts
    11
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by RagnaBaby View Post
    Do anyone know a simple flag to check if I am in-game? or not in-menu?

    Thanks
    you could try a imagesearchfunction that searches for a part of the "angels and demons" on the HuD, make sure you aren't trying to find a part of the health/mana globes thou!

  5. #80
    RagnaBaby's Avatar Member
    Reputation
    1
    Join Date
    May 2009
    Posts
    28
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by sarastrasza View Post
    you could try a imagesearchfunction that searches for a part of the "angels and demons" on the HuD, make sure you aren't trying to find a part of the health/mana globes thou!
    Yeah, I do that pixel/image search thing.

    It's just that I'm hoping for a memory thing that's fast. IterateObjectList() is too slow.

  6. #81
    Kizzarse's Avatar Corporal
    Reputation
    1
    Join Date
    Jul 2012
    Posts
    24
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Did new patch break something? I notice that Global $ofs_ObjectManager = 0x15A0BEC changed from ;0x015A1BEC.

    But now IterateActorAtribs($OBject[$OBJIndex][1], $Atrib_Hitpoints_Cur) get False instead of Current Hitpoints.
    Not sure what else has changed.

  7. #82
    Thaelion's Avatar Member
    Reputation
    9
    Join Date
    Jan 2008
    Posts
    168
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Kizzarse View Post
    Did new patch break something? I notice that Global $ofs_ObjectManager = 0x15A0BEC changed from ;0x015A1BEC.

    But now IterateActorAtribs($OBject[$OBJIndex][1], $Atrib_Hitpoints_Cur) get False instead of Current Hitpoints.
    Not sure what else has changed.
    Your missing a few items that need changing,
    Code:
    IntPtr ObjectManager 0x15A0BEC;
    IntPtr ActorAtribBase = 0x15A1EA4;
    IntPtr InteractBase  = 0x15A0BD4;
    IntPtr ACDBase = &H15A0BEC;
    I dont know if you use ACD in your scripts or not, maybe share your scripts, ofc there are other things that changed, and without knowing the exact things your trying to do, its hard to give you the details.

  8. #83
    Kizzarse's Avatar Corporal
    Reputation
    1
    Join Date
    Jul 2012
    Posts
    24
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Just using the D3MemUDF.au3 by UnknOwned, and added some funcs for a simple attack bot that checks mob GUID and attack if the health is > 0.
    Thanks for the update so are these the full changes for D3MemUDF.au3 basically back to the old sets i.e.

    Global $ofs_MonsterDef = 0x15DBE00 ;0x015DCE00 ;0x15DBE00 ; I changed these myself not sure if they are correct
    Global $ofs_StringListDef = 0x015E9808 ; I changed these myself not sure if they are correct
    Global $ofs_ActorDef = 0x15EC108 ;0x015ED108 ;0x15EC108 ; I changed these myself not sure if they are correct

    Global $ofs_ActorAtrib_Base = 0x15A1EA4 ;0x015A2EA4;0x015A1EA4 ; Changed per post Thaelion
    Global $ofs_ObjectManager = 0x15A0BEC ;0x015A1BEC;0x15A0BEC ; Changed per post Thaelion
    Global $ofs_InteractBase = 0x15A0BD4 ;0x015A1BD4;0x15A0BD4 ; Changed per post Thaelion

    I am still new to all these, so there isnt really anything complicated, what I am trying to is use D3MemUDF.au3 and add stuff to it to do auto attacks and looting.

    Thanks alot for your help

  9. #84
    sdq928's Avatar Private
    Reputation
    1
    Join Date
    Mar 2010
    Posts
    12
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Kizzarse View Post
    Just using the D3MemUDF.au3 by UnknOwned, and added some funcs for a simple attack bot that checks mob GUID and attack if the health is > 0.
    Thanks for the update so are these the full changes for D3MemUDF.au3 basically back to the old sets i.e.

    Global $ofs_MonsterDef = 0x15DBE00 ;0x015DCE00 ;0x15DBE00 ; I changed these myself not sure if they are correct
    Global $ofs_StringListDef = 0x015E9808 ; I changed these myself not sure if they are correct
    Global $ofs_ActorDef = 0x15EC108 ;0x015ED108 ;0x15EC108 ; I changed these myself not sure if they are correct

    Global $ofs_ActorAtrib_Base = 0x15A1EA4 ;0x015A2EA4;0x015A1EA4 ; Changed per post Thaelion
    Global $ofs_ObjectManager = 0x15A0BEC ;0x015A1BEC;0x15A0BEC ; Changed per post Thaelion
    Global $ofs_InteractBase = 0x15A0BD4 ;0x015A1BD4;0x15A0BD4 ; Changed per post Thaelion

    I am still new to all these, so there isnt really anything complicated, what I am trying to is use D3MemUDF.au3 and add stuff to it to do auto attacks and looting.

    Thanks alot for your help
    global $ofs_StringListDef = 0x015E8808

  10. #85
    Inbound's Avatar Private
    Reputation
    1
    Join Date
    Jul 2012
    Posts
    6
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Im getting this error:
    indexstringlist($objext_file_string $index 0 array variable subscript badly formatted

  11. #86
    shoanimal's Avatar Private
    Reputation
    3
    Join Date
    Jul 2012
    Posts
    14
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by RagnaBaby View Post
    Do anyone know a simple flag to check if I am in-game? or not in-menu?

    Thanks
    I have found the best way is to simply use either Offsetlist() or LocateMyToon(). LocateMyToon() will check memory for your characters reference and if it cant find your character it will return false. Offsetlist() is actualy calling LocateMyToon() and if it gets false from LocateMyToon() it also returns false so when i need to call it i also use it to check if i am in game like so
    Code:
    If Not Offsetlist() Then
    	FileWrite($log, ",Game not started" & @CRLF)
    	ContinueLoop
    Else

  12. #87
    shoanimal's Avatar Private
    Reputation
    3
    Join Date
    Jul 2012
    Posts
    14
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Inbound View Post
    Im getting this error:
    indexstringlist($objext_file_string $index 0 array variable subscript badly formatted
    Here is a quote from earlier in the thread that might help you. I had the same issue and this fixed it.


    Originally Posted by botserver View Post
    Just ADD
    If $ACDIndex = -1 Then Return False
    in IterateActorAtribs function

    Code:
    func IterateActorAtribs($_GUID,$_REQ)
    	IterateLocalActor()
    	$ACDIndex = _ArraySearch($__ACTOR,"0x"&hex($_GUID), 0 , 0 , 0 , 1 , 1 , 1)      ;this bitch is slow as hell
    	If $ACDIndex = -1 Then Return False ;FIX
    thanks again botserver

  13. #88
    Inbound's Avatar Private
    Reputation
    1
    Join Date
    Jul 2012
    Posts
    6
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by shoanimal View Post
    Here is a quote from earlier in the thread that might help you. I had the same issue and this fixed it.




    thanks again botserver
    No I'm still getting the same error.

  14. #89
    un4given2's Avatar Corporal
    Reputation
    10
    Join Date
    May 2012
    Posts
    30
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by UnknOwned View Post
    I wouldnt care for using mpq's for string lists but i fully agree that a database is preferred when making navigation.
    I made a sample code that took all the pathing data from memory and converted it to simple waypoints (center space coords) to navigate random generated dungeons. Hower the process of reading all the data from memory was a bit too slow for my taste so i ended up pre generating the coordinates from the MPQ files into simple navigation points that i could navigate using A-star, but you do need to get data like actor collisions from objects that are not a part of the scene file. The easiest way (that i know of) is to index the actor collision structure that contains X,Y and Z coordinates plus size of all collideable actors (even monsters).
    I assume, there are three possible ways for pathfinding using pre generated waypoints from MPQ files.
    1- pre generate a mesh from scene data files for each scene then dynamically assign weight(cost) to each node base on actor collision data etc, and finally use a pathfinding algorithm like A* for navigating.
    2- pre generate set of paths for each scene file then ,dynamically, choose a path base on actor collision data .
    3- pre generate a path for each scene file and use a anti stuck/stuck recovery mechanism base on collision data from memory.

    I think, first method is the most precise/versatile method but the slowest one also, and third one could be the fastest but depends on the stuck recovery mechanism which used.

  15. #90
    Thaelion's Avatar Member
    Reputation
    9
    Join Date
    Jan 2008
    Posts
    168
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I updated the attribute search function in the script a little, this should be a bit quicker, at least it is on my pc.
    If you see any issues in this code, lets talk about it


    Code:
    Func IterateActorAtribs2($_GUID, $_REQ)
       $ret = GetAttribute(BitOR($_REQ[0], 0xFFFFF000))
       $val = _MemoryRead($ret, $d3, $_REQ[1])
       return $val
    EndFunc
    
    Func GetAttribute($offset)
       $CAttribFormula = _MemoryRead($ActorAtrib_4 + 0x10, $d3, 'ptr')
       $_418 = _MemoryRead($CAttribFormula + 0x418, $d3, 'ptr')
       $AttributesMap = _MemoryRead($CAttribFormula + 0x8, $d3, 'ptr')
       $IndexMask = BitAND($_418, ($offset ^ (BitShift($offset, 0x10))))
       $_res = ($AttributesMap + 4 * $IndexMask)
       $result = _MemoryRead($_res, $d3, 'ptr')
       If $result <> 0 Then
    	  While _MemoryRead($result, $d3, 'ptr') <> $offset
    		 $result = _MemoryRead($result, $d3, 'ptr')
    		 If $result = 0 Then
    			ExitLoop
    		 EndIf
    	  Wend
       EndIf
       return $result
    EndFunc
    Last edited by Thaelion; 07-11-2012 at 02:43 AM. Reason: added code tags

Page 6 of 21 FirstFirst ... 2345678910 ... LastLast

Similar Threads

  1. Interact problems with Click to move
    By natt_ in forum WoW Memory Editing
    Replies: 3
    Last Post: 09-28-2014, 02:12 PM
  2. [AutoIt] Diablo 3 Click To Move, Interaction, Actor Indexing.
    By UnknOwned in forum Diablo 3 Memory Editing
    Replies: 84
    Last Post: 06-30-2012, 11:59 AM
  3. [Diablo 3] Click to move?
    By diablothree in forum Diablo 3 Memory Editing
    Replies: 3
    Last Post: 01-14-2012, 04:29 AM
  4. Click to move?
    By ashleyww in forum WoW Memory Editing
    Replies: 32
    Last Post: 07-18-2009, 08:48 PM
  5. Click to Move Problem
    By Rival-Fr in forum WoW Memory Editing
    Replies: 5
    Last Post: 07-03-2009, 09:27 AM
All times are GMT -5. The time now is 11:15 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