Player collision with NPC/Mobs menu

User Tag List

Page 1 of 2 12 LastLast
Results 1 to 15 of 25
  1. #1
    ShoniShilent's Avatar Member
    Reputation
    7
    Join Date
    May 2008
    Posts
    105
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Player collision with NPC/Mobs

    In certain areas of the game, if you run in to an area, monsters can trap you and you have to 'fight your way out'. This is because the client calculates collision with your player x/y/z (or some other value) with in-memory x/y/z of NPC's. For instance, ALL monsters, and SOME NPC like the tristram militant guards in Tristram have this detection, or the commander having collision vs. the guards NOT having collision at the gates of Tristram in ACT I. The game makes you try to 'run around' them or in some cases you rubberband bounce off of them if you are 'just right' and your character keeps trying to walk through them but is not stopped.

    the ONLY code writing to the x/y/z seems to be here (and near here)

    00B48612 - D9 5B 10 - fstp dword ptr [ebx+10]

    that is the 'X'. This is for the variables if I lock them they character stays in place.

    at any rate, i have been having trouble with this. Because you are able to walk through some NPC and because the collision checks are so fast and don't seem to have 'lag' I feel somewhat certain that the player to 'xxxx' collisions are done client side. With that said, i been at this all day and haven't found anything useful. Likely this all boils down to a collision check somewhere or even a actor type vs. another actor type to determine if there even IS a collision check. also, the actor struct of the 'mob' or 'npc' might simply have a 1 or 0 or -1 or something indicating to check it for collisions.

    there is at least ONE hack out that seems to kill this collisions check, and offers an option to do what i am trying to do.. i.e. you can walk through monsters without being stopped. I did not have the beta to look at so all my work is being done with retail. however, i think it is ghey to buy someone else's work and then reverse it, unless there is just no other way to determine how to do something.

    has anyone else been looking into this? if you know of the function that determines if the player actor collides with mobs/monsters can you tell me which one it is? i'd appreciate any guidance or help if you have any knowledge or suggestions.

    been a member since mmowned days, look forward to any help guys-

    Shoni-

    Player collision with NPC/Mobs
  2. #2
    ShoniShilent's Avatar Member
    Reputation
    7
    Join Date
    May 2008
    Posts
    105
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    i don't like to bump, but i am just throwing it back out there. does anyone have any ideas on this?

    thanks-

  3. #3
    ChrisSch's Avatar Sergeant
    Reputation
    6
    Join Date
    Apr 2012
    Posts
    37
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    should be doable. but they will fix it pretty fast anyway, so its not worth investigating i think.
    someone correct me if im wrong

  4. #4
    BitHacker's Avatar Master Sergeant
    Reputation
    13
    Join Date
    May 2012
    Posts
    114
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    ShoniShilent,

    Its called a bounding box or bounding sphere. Its directx related. You need to get yourself a directx book. Your post doesn't specify what your trying to do?

    -Bit_Hacker

  5. #5
    ChrisSch's Avatar Sergeant
    Reputation
    6
    Join Date
    Apr 2012
    Posts
    37
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by BitHacker View Post
    ShoniShilent,

    Its called a bounding box or bounding sphere. Its directx related. You need to get yourself a directx book. Your post doesn't specify what your trying to do?

    -Bit_Hacker
    That stuff has nothing to do with directx dude.
    And yes he did specify what he tried to do!
    Just read the post

    He wants to disable collision with other mobs.

  6. #6
    BitHacker's Avatar Master Sergeant
    Reputation
    13
    Join Date
    May 2012
    Posts
    114
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    ChrisSch,

    The bounding box has a direct interaction with collisions in game. Other wise there would be no collisions on anything. You would be able to walk thru everything.

    I can get references if I have too.

    Each model, has a bounding box or bounding sphere around it.

    Ref: http://www.toymaker.info/Games/html/collisions.html

    If he wants to disable collisions. Then he needs to take away the bounding spheres, or boxes on those character models. Collisions wouldn't happen then.

    -Bit_Hacker
    Last edited by BitHacker; 05-21-2012 at 11:52 AM.

  7. #7
    DonTomika's Avatar Member
    Reputation
    1
    Join Date
    Dec 2008
    Posts
    2
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    BitHacker,

    I'm pretty sure everybody in this topic knows what bounding boxes are and how to deal with them. The OP is asking for a way to disable collisions and your advices are not going to bring him closer to his goal. No offense, just the truth. Thanks for the effort though!

    ShoniShilent,

    Unfortunatelly I can't give you function pointers or anything for collision checks, but after having a quick look at the mooege source, it seems that collision data is stored in the actor SNOs (see Mooege.Common.MPQ.FileFormats.Actor.ActorCollisionData). If a per-actor solution is enough, you could try to modify those flags and bounding boxes in the game's memory for every actor encountered / you are interested in.

  8. #8
    BitHacker's Avatar Master Sergeant
    Reputation
    13
    Join Date
    May 2012
    Posts
    114
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    DonTomika,

    I see you joined in 2008, and only have 2 posts. Congratulations on coming out of our hole and peaking your head out just to tell me. Thanks for my effort and then to tell Shoni, "look at mooege source and to look at bounding boxes in memory."

    You had me laughing after the first sentence.

    I'm sorry guys, I couldn't let that troll go.. lmao...

    -Bit_Hacker
    Last edited by BitHacker; 05-21-2012 at 02:09 PM.

  9. #9
    MaiN's Avatar Elite User
    Reputation
    335
    Join Date
    Sep 2006
    Posts
    1,047
    Thanks G/R
    0/10
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by BitHacker View Post
    DonTomika,

    I see you joined in 2008, and only have 2 posts. Congratulations on coming out of our hole and peaking your head out just to tell me. Thanks for my effort and then to tell Shoni, "look at mooege source and to look at bounding boxes in memory."

    You had me laughing after the first sentence.

    I'm sorry guys, I couldn't let that troll go.. lmao...

    -Bit_Hacker
    You need to shut the **** up before you embarrass yourself further. You obviously have no experience reversing any of Blizzard games to state that Blizzard would be using DirectX boundingboxes. To suggest that is such idiocy, but to stand your point and attack someone personally after being corrected shows that your attitude in this forum is wrong.
    Blizzard use a physics engine, probably their own (I have no idea) which includes this kind of stuff. No way in hell would they use DirectX bounding box structs because that introduces a dependency on DirectX that they don't need. They want to be able to switch rendering engines (OpenGL, DirectX 9, DirectX 10, DirectX 11) without keeping a dependency on the previous rendering engines. What OP asks is a completely valid question.
    He doesn't need to take away bounding boxes, he needs to eliminate the checks that use them. These are definitely located somewhere in Diablo, not in DirectX.
    [16:15:41] Cypher: caus the CPU is a dick
    [16:16:07] kynox: CPU is mad
    [16:16:15] Cypher: CPU is all like
    [16:16:16] Cypher: whatever, i do what i want

  10. #10
    BitHacker's Avatar Master Sergeant
    Reputation
    13
    Join Date
    May 2012
    Posts
    114
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by MaiN View Post
    You need to shut the **** up before you embarrass yourself further. You obviously have no experience reversing any of Blizzard games to state that Blizzard would be using DirectX boundingboxes.
    Look at the mooege source code you will see the use of bounding boxes. lol...

    He doesn't need to take away bounding boxes, he needs to eliminate the checks that use them.
    You go on to say there is no bounding boxes but then you say there are? lol... again...

    -Bit_Hacker

  11. #11
    MaiN's Avatar Elite User
    Reputation
    335
    Join Date
    Sep 2006
    Posts
    1,047
    Thanks G/R
    0/10
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by BitHacker View Post
    Look at the mooege source code you will see the use of bounding boxes. lol...



    You go on to say there is no bounding boxes but then you say there are? lol... again...

    -Bit_Hacker
    I never said there was no boundingboxes, I said Blizzard wasn't using DirectX' boundingboxes. They have their own physics engine that has this stuff. They don't depend on DirectX for this kind of stuff.
    [16:15:41] Cypher: caus the CPU is a dick
    [16:16:07] kynox: CPU is mad
    [16:16:15] Cypher: CPU is all like
    [16:16:16] Cypher: whatever, i do what i want

  12. #12
    BitHacker's Avatar Master Sergeant
    Reputation
    13
    Join Date
    May 2012
    Posts
    114
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    MaiN,

    Open up CFF Explorer and load up Diablo3.exe into it. Then navigate to the IMPORT directory.. WHAT DO WE SEE D3D9.DLL

    ITS A DIRECTX GAME MAN... Go read a Directx Book about bounding boxes and spheres.. I'm done talking...

    -Bit_Hacker

  13. #13
    Apoc's Avatar Angry Penguin
    Reputation
    1387
    Join Date
    Jan 2008
    Posts
    2,750
    Thanks G/R
    0/12
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by BitHacker View Post
    MaiN,

    Open up CFF Explorer and load up Diablo3.exe into it. Then navigate to the IMPORT directory.. WHAT DO WE SEE D3D9.DLL

    ITS A DIRECTX GAME MAN... Go read a Directx Book about bounding boxes and spheres.. I'm done talking...

    -Bit_Hacker
    Let me just shoot you down right here. Because you obviously have no clue what you're talking about.

    D3 does have deps on DirectX, simply for the RENDERING of the game. They don't use DirectX's math libraries (excluding the requirements for pushing D3's rendering data to the DirectX device stacks [eg; D3DVertex]). Blizzard doesn't, and never will, use DirectX's math objects for any actual game math. They use their own math library to do all this (which is most likely coupled with their physics engine which seems largely based on SC2's engine). In WoW, they use something like NTempest or some shit, I can't remember off the top of my head.

    The fact that bounding spheres/boxes exist in the game has very little to do with what he's trying to accomplish. He wants to basically turn off collisions with certain objects (or all objects), which requires *zero* math knowledge as far as "hey, this is what does the collision check... lets nop it out" or similar.

    Through all your posts, you've shown near-zero knowledge of reversing. If you continue to post stupid nonsense like this, I will just flat out remove you from our site.

  14. #14
    MaiN's Avatar Elite User
    Reputation
    335
    Join Date
    Sep 2006
    Posts
    1,047
    Thanks G/R
    0/10
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by BitHacker View Post
    MaiN,

    Open up CFF Explorer and load up Diablo3.exe into it. Then navigate to the IMPORT directory.. WHAT DO WE SEE D3D9.DLL

    ITS A DIRECTX GAME MAN... Go read a Directx Book about bounding boxes and spheres.. I'm done talking...

    -Bit_Hacker
    You're an idiot. Just because it has a dependency right now, doesn't mean it will have in the future. Also, there is a Mac version of the game which uses OpenGL. This by itself proves that, DIABLO DOES NOT USE DIRECTX BOUNDING BOXES. DIRECTX HAS NO RELATION TO BOUNDINGBOXES IN THIS GAME. STOP TELLING PEOPLE TO READ DIRECTX BOOKS ABOUT BOUNDING BOXES.
    [16:15:41] Cypher: caus the CPU is a dick
    [16:16:07] kynox: CPU is mad
    [16:16:15] Cypher: CPU is all like
    [16:16:16] Cypher: whatever, i do what i want

  15. #15
    boredevil's Avatar Active Member Authenticator enabled
    Reputation
    46
    Join Date
    Feb 2008
    Posts
    166
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by BitHacker View Post
    MaiN,

    I'm done talking...

    -Bit_Hacker
    That sounds too good to be true...

    edit: sorry for the spam. that guy makes me go nerdrage...

Page 1 of 2 12 LastLast

Similar Threads

  1. Get Custom Npc/Mob for your server
    By Acespades in forum World of Warcraft Emulator Servers
    Replies: 4
    Last Post: 09-23-2007, 02:24 PM
  2. Help with NPC Teleporters
    By KnownReason in forum World of Warcraft Emulator Servers
    Replies: 3
    Last Post: 09-11-2007, 05:22 PM
  3. Replies: 0
    Last Post: 08-28-2007, 04:38 PM
  4. neat exploit for exploration and discovery town exp with no mobs anywhere.
    By jookiyaya in forum World of Warcraft Exploits
    Replies: 11
    Last Post: 04-10-2007, 08:22 AM
  5. Tanaris with no mobs
    By Adrenalin3 in forum World of Warcraft Exploration
    Replies: 10
    Last Post: 03-05-2007, 06:56 PM
All times are GMT -5. The time now is 05:09 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