[C#][Source] Radar and Object Manager Tester / Verifier menu

User Tag List

Page 1 of 2 12 LastLast
Results 1 to 15 of 19
  1. #1
    xochi's Avatar Member
    Reputation
    10
    Join Date
    Jul 2009
    Posts
    6
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    [C#][Source] Radar and Object Manager Tester / Verifier

    Hello all, I decided I'd share something I put together to verify that I have the object manager reading correctly.

    For those of you who are scared of the wall of text, here's the short version: scroll down to see picture of radar, if interested, download project, marry it with Seifer's BlackRain, done. The rest get to keep reading.

    I am intending this for programmers who are new to C# (and therefore Visual Studio) and/or memory reading. It is not a finished product, rather, it should be a good starting point for those who want to modify it to fit their needs. Hopefully the way it is coded makes that easy.

    Admittedly, after writing the steps, a non-programmer should be able to get it working even though I still hold to writing this for programmers who are new to C# (but NOT new to programming), the IDE (Visual C#) and/or memory reading to give them a start. As a reminder, be sure you know the Memory Editing Section Rules before posting.

    The steps to get this working are as follows:

    1. Download and install Microsoft Visual C# 2010 Express

    2. You will need an SVN client, if you don't already have a favorite, then I would suggest using TortoiseSVN for this example.


    3. Download and unzip the file in your project folder of choice.

    4. Get the BlackRain codebase .


    right-click in your project folder (that you created in step 3) and choose SVN Checkout. In the window that pops up, put in the "URL of repository" (found on the BlackRain Google Code web site), change the Checkout directory to be the root of your project folder (see pic) and hit OK.



    You'll get a requestor asking if you are sure, and it will complain that the folder is not empty (pic again), hit Yes.



    Afterwards, you'll get pretty green and blue icons on your regular icons (see 3rd pic)



    You also need a ZIP file from the same google code site that contains the needed dll files, BlackMagic and fasmdll_managed (BlackRain 1.3.0.1 RC1.zip at time of writing). Unzip these 2 files into the BlackRain folder that was created. Now your BlackRain directory should look like the following (pic):



    At this point, double click on the .sln file and open up the project in Visual C# 2010. If Visual C# doesn't come up as administrator (look at the title bar, it will have "WindowsFormsApplication1 - Microsoft Visual C# 2010 (Administrator)" in it. If it doesn't then you might have to open up Visual C# by itself first by right clicking on the launching icon and choosing "Run as Administrator" and then open up the project from File -> Open Project and navigating to the .sln file manually.

    On the right side in the Solution Explorer you should see the 2 projects (BlackRain and WindowsFormsApplication1).

    Go to BlackRain and right-click on references and choose Add Reference then Browse and find BlackMagic.dll, select it and hit ok. Do the same for fasmdll_managed.dll. You might also have to do the same for WindowsFormsApplication1.

    4a. Update any offsets.

    Open up Offsets.cs in the BlackMagic project and double click on it. This is where all the offsets are.

    At this point you should be able to find a post that should detail out some offsets for you to play around with, replace old ones, or add new ones to your liking. Typically posts that contain offsets are labeled as "Info Dump Thread". The post is also generally either a sticky or it is a recent post. The current version of BlackRain (at least at time of writing) doesn't have the correct offsets for the current version of WoW so you have to swap them out with current ones. Current version right now is 4.0.3.13329.

    The one group of offsets that might give you the biggest problem is "public enum ObjectManager" because of the differences in names (as shown in comments below) so I'll provide it.

    Code:
        // 4.0.3.13329
        public enum ObjectManager
        {
            Tls = 0x8B3F78,  // clientConnection
            CurMgr = 0x462C, // objectManager
            LocalGuid = 0xB8,
            FirstObject = 0xB4,
            NextObject = 0x3C,
        }
    replace all the offsets you can find in Offsets.cs with the ones in the current post

    After you are through with all your offsets, hit F6 (builds it) and it will show you any errors. I'm going to assume you can take it from here. I had to comment out Guild in WowCorpse and then there was another error that just disappeared.

    5. start up your WoW client and log in

    6. start up your newly created project (F5 or Ctrl+F5 will start it - look at the Debug menu for those commands)

    7. watch in wonder at the pretty triangles that move without your intervention



    full screenshot

    As you can see from the screenshot, the final product is a little large for those of you still stuck on small screens, and I am being liberal with space at the bottom there. That was because I was putting in extra stuff that I was playing around with like only showing other players vs. NPCs (via a checkbox/toggle), etc. I'm leaving it and not resizing it because everybody's monitors are different sizes and configurations (multiple monitors).

    Other stuff:

    I have been a programmer for a while, I just haven't ever programmed in C# before this so if there are veterans that code in C# for a living and want to point out anything that looks really bad, I'm all ears and would re-upload the code with changes depending on the fix.

    I also want to point out the WowXXXUtils classes, I know, its a bit weird. This is because I like objects to describe themselves but I wanted to keep Seifer's BlackRain codebase untouched (except for offsets) so I settled for a sort of inheritance.

    Credits go to:
    Seifer - for BlackRain
    Shynd - for BlackMagic
    jbrauman - his radar example


    Hope you enjoy!
    Last edited by xochi; 12-18-2010 at 06:26 PM. Reason: full screenshot was a little too big

    [C#][Source] Radar and Object Manager Tester / Verifier
  2. #2
    Fabio571's Avatar Private
    Reputation
    1
    Join Date
    Nov 2010
    Posts
    7
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Very good tutorial, Im gonna try it now

  3. #3
    Fabio571's Avatar Private
    Reputation
    1
    Join Date
    Nov 2010
    Posts
    7
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Do you know why the GUIDs of the NPCs are different from the ones read at 0x8CBB18 (current target guid address), but the GUIDs of the players are the same?
    Last edited by Fabio571; 12-28-2010 at 05:20 AM.

  4. #4
    binutils's Avatar Private
    Reputation
    1
    Join Date
    Dec 2010
    Posts
    4
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Please include the source to blackrainobjects/blackrain.dll including your changes to the Offsets.cs and any other files in your .zip. The project is GPL3 and you're required to give out the source if you distribute the binary which you've done.

    thanks!

  5. #5
    _Mike's Avatar Contributor
    Reputation
    310
    Join Date
    Apr 2008
    Posts
    531
    Thanks G/R
    0/2
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by binutils View Post
    Please include the source to blackrainobjects/blackrain.dll including your changes to the Offsets.cs and any other files in your .zip. The project is GPL3 and you're required to give out the source if you distribute the binary which you've done.

    thanks!
    I suggest you reread the GPL.

  6. #6
    binutils's Avatar Private
    Reputation
    1
    Join Date
    Dec 2010
    Posts
    4
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I'm very clear on the GPL. He distributed a modified binary version of the DLL and did not include or make available the source.

    jason@citadel:~/dev$ ls -al RadarAndOMTester.zip
    -rw-r--r-- 1 jason jason 306140 2010-12-18 17:21 RadarAndOMTester.zip

    jason@citadel:~/dev$ find .| grep dll
    ./WindowsFormsApplication1/bin/Release/BlackRain.dll
    ./WindowsFormsApplication1/bin/Debug/BlackMagic.dll
    ./WindowsFormsApplication1/bin/Debug/fasmdll_managed.dll
    ./WindowsFormsApplication1/bin/Debug/BlackRain.dll

    And just to clarify, I'm not talking about the source to the radar application. Only those files covered under the GPL. BlackRain's author was nice enough to release it's source code under GPLv3. The included BlackRain.dll is built from modified source of that available from the google code repository and it's source code must be provided.
    Last edited by binutils; 12-31-2010 at 08:35 AM.

  7. #7
    Seifer's Avatar Site Donator
    Reputation
    129
    Join Date
    Apr 2007
    Posts
    270
    Thanks G/R
    1/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Nice work, glad to see people making cool stuff using BlackRain!

    Originally Posted by _Mike View Post
    I suggest you reread the GPL.
    The preamble of the GNU GPL, version 3 reads:

    When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things.

    To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others.

    For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.
    Which he does, it's only debatable whether or not that includes the BlackRain source code. At any rate, updating BlackRain with what's available across these boards shouldn't be too hard - and frankly, if you want to make use of it, you should update it for yourself.
    Last edited by Seifer; 12-31-2010 at 08:31 AM.

  8. #8
    binutils's Avatar Private
    Reputation
    1
    Join Date
    Dec 2010
    Posts
    4
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I've made the needed changes. I'm testing the waters before releasing any of my changes to make sure this community respects the rights of it's users. Saying I should make my own changes is beside the point of not honoring the conditions of the GPL.

  9. #9
    XTZGZoReX's Avatar Active Member
    Reputation
    32
    Join Date
    Apr 2008
    Posts
    173
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    If you distribute a modified version of GPL'd software, you HAVE to make available the source, at the very least, upon request. Period.

    And yes, the GPL is retarded. Don't think I'm on the FSF's side.

    I don't see why people can't just release their stuff under the MIT (Expat) License...
    Last edited by XTZGZoReX; 12-31-2010 at 09:41 AM.

  10. #10
    Cypher's Avatar Kynox's Sister's Pimp
    Reputation
    1358
    Join Date
    Apr 2006
    Posts
    5,368
    Thanks G/R
    0/6
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by XTZGZoReX View Post
    If you distribute a modified version of GPL'd software, you HAVE to make available the source, at the very least, upon request. Period.

    And yes, the GPL is retarded. Don't think I'm on the FSF's side.

    I don't see why people can't just release their stuff under the MIT (Expat) License...
    Because not everybody wants to give cheat sellers delicious copypasta. At least, that's my reason... That's why HadesMem is under the GPL, but I give exclusions to people upon request.

  11. #11
    _Mike's Avatar Contributor
    Reputation
    310
    Join Date
    Apr 2008
    Posts
    531
    Thanks G/R
    0/2
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Regarding the gpl:
    A Quick Guide to GPLv3 - GNU Project - Free Software Foundation (FSF)
    One of the fundamental requirements of the GPL is that when you distribute object code to users, you must also provide them with a way to get the source. GPLv2 gave you a few ways to do this, and GPLv3 keeps those intact with some clarification. It also offers you new ways to provide source when you convey object code over a network. For instance, when you host object code on a web or FTP server, you can simply provide instructions that tell visitors how to get the source from a third-party server. Thanks to this new option, fulfilling this requirement should be easier for many small distributors who only make a few changes to large bodies of source.
    The OP provides a link to the BlackRain source and explains the changes he has done in a way that is easily reproducable, which is all that GPL3 requires.

    Edit:
    And no, the GPL is not retarded imo; For example for the reasons Cypher stated above. (Not that I think most cheat sellers would honor the GPL anyway, but that's another issue)
    Last edited by _Mike; 12-31-2010 at 12:50 PM.

  12. #12
    SKU's Avatar Contributor
    Reputation
    306
    Join Date
    May 2007
    Posts
    565
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by _Mike View Post
    Regarding the gpl:
    A Quick Guide to GPLv3 - GNU Project - Free Software Foundation (FSF)

    The OP provides a link to the BlackRain source and explains the changes he has done in a way that is easily reproducable, which is all that GPL3 requires.

    Edit:
    And no, the GPL is not retarded imo; For example for the reasons Cypher stated above. (Not that I think most cheat sellers would honor the GPL anyway, but that's another issue)
    Sorry for the off-topic question, but do you have a quote on that? I can't seem to find anything in the FAQ about this. Everything I found says explicitly that you must provide the modified source code, not just explanations about the changes.

    Can I release a modified version of a GPL-covered program in binary form only?

    No. The whole point of the GPL is that all modified versions must be free software—which means, in particular, that the source code of the modified version is available to the users.
    Frequently Asked Questions about the GNU Licenses - GNU Project - Free Software Foundation (FSF)

  13. #13
    _Mike's Avatar Contributor
    Reputation
    310
    Join Date
    Apr 2008
    Posts
    531
    Thanks G/R
    0/2
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by SKU View Post
    Sorry for the off-topic question, but do you have a quote on that? I can't seem to find anything in the FAQ about this. Everything I found says explicitly that you must provide the modified source code, not just explanations about the changes.
    No, and it might be that I'm interpreting the rules wrongly; But I would count the code posted in the OP to be 'code hosted on a third party server'
    Patch diffs and a link to the original source are usually accepted as not breaking the GPL, and the op could be seen as a higher level diff

  14. #14
    Cypher's Avatar Kynox's Sister's Pimp
    Reputation
    1358
    Join Date
    Apr 2006
    Posts
    5,368
    Thanks G/R
    0/6
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by _Mike View Post
    Regarding the gpl:
    A Quick Guide to GPLv3 - GNU Project - Free Software Foundation (FSF)

    The OP provides a link to the BlackRain source and explains the changes he has done in a way that is easily reproducable, which is all that GPL3 requires.

    Edit:
    And no, the GPL is not retarded imo; For example for the reasons Cypher stated above. (Not that I think most cheat sellers would honor the GPL anyway, but that's another issue)
    Heh, yeah. That's a social issue though, and one that's totally out of my control. At least my code is fairly easy to identify, even in binary form.

  15. #15
    xochi's Avatar Member
    Reputation
    10
    Join Date
    Jul 2009
    Posts
    6
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    @binutils

    My code was meant to fit on top of Seifer's BlackRain project. You seem not to fit in the group of people I was intending this for since you seem to have spent more time picking apart the zip file than actually gathering offsets and making it work. It seems like you are really only after the offsets and not really any GPL stuff. And I won't believe anything about you doing this for the protection or respect of user rights.

    I really dislike when I'm reading threads and they get hijacked, especially when it is a topic I would really like to know more about. This is exactly what you have done to this thread. Now others who would like to read about radar and/or object manager stuff get to read your rant about the GPL. If I am in some sort of violation, how about PMing me first?

    Now, what is it that you would like me to do? Would you like me to re-zip the project so that it doesn't include the bin and obj directories? Is there anything else that I need to omit so that it is compliant but still functions as per the list of instructions? If you are after me including my whole project then this is not the way to make me do it.

Page 1 of 2 12 LastLast

Similar Threads

  1. [C#][Source] BlackRain - Simple Object Manager Library
    By Seifer in forum WoW Memory Editing
    Replies: 195
    Last Post: 04-08-2015, 03:02 PM
  2. Quest Items and object manager...
    By kajko in forum WoW Memory Editing
    Replies: 8
    Last Post: 04-14-2011, 07:52 PM
  3. Replies: 9
    Last Post: 03-03-2010, 02:36 PM
  4. [Source] WPF Wow Object manager
    By !@^^@! in forum WoW Memory Editing
    Replies: 11
    Last Post: 01-26-2010, 04:13 PM
  5. Difference between object list ptr and object list manager?
    By Tanaris4 in forum WoW Memory Editing
    Replies: 19
    Last Post: 10-08-2009, 01:22 PM
All times are GMT -5. The time now is 10:47 PM. 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