3D WoW Radar for whatever version its on right now, 32bit
Eye candy of it drawing everything (well the types it cares about)
I hate doing posts explaining how stuff works, so pardon me if it sucks.
So I lost my source code to my old radar and decided to write a new one since I've started playing again. While I was making it I thought it would be pretty cool if I got it to do a 3d over lay of stuff I'm looking for on the screen so I could, for example, mine faster, or just be aware of any enemy ****s trying to gank (or if I wanted to do some ganking).
The radar window with its settings.
It creates a layered window fullscreened, and it renders the 3d objects to that window (which is topmost hence why you can see it while you're playing). Crucial to the 3d rendering is the X scale and Y scale variables (that you can change with the slide bars bottom left of the window). For my screen the values x:755, y:775 put the 3d points to where they need to be for me. So if you're having issues on your screen, play with theses values to get it setup correctly.
My codes pretty messy right now, but after probably 16 hours of typing/troubleshooting time, I'm not too worried about it. I'm planning on spending probably another 16 hours cleaning up the source code, streamlining it, little features like saving settings between executions, making easier to update, and making it more "correct" to c standards.
I heavily used you're guys's offsets threads for current patch (mainly torpedo (well last patch for him, just did math for the current patch from evil2, thanks guys) information. Which is mainly why I'm releasing the source code.
Attached is the .zip with the binary, and the pelles c project file and source code.
Edit: Updated to current wow version. Added a new slider to set the draw size of the boxes and shit.
Last edited by KcDan; 08-10-2015 at 07:54 PM.
Post Thanks / Like - 2 Thanks
razer86, para_ (2 members gave Thanks to KcDan for this useful post)
Well I've detected and fixed two memory leaks (it ate up about 1mb every 5min or so it was hard to detect at first) and pretty much redid my wow.c file and main.c. Trimmed a lot of fat, made it more readable, and reduced the amount of RPMs per drawing iteration.
Added a new feature if a unit or player is dead,it will draw a grayed out/faction color X instead of a box so its alot easier to detect alive units.
It only uses 1mb or ram and cpu load for me is about 3% (and im on a shitty laptop).
Attached is the new source code+binary. 32bit client only.
Last edited by KcDan; 11-08-2014 at 10:14 PM.
Post Thanks / Like - 1 Thanks
para_ (1 members gave Thanks to KcDan for this useful post)
So Im making more changes to it, and Im just playing around. Instead of doing a direct read of the current objects WoW can see, it adds it to my own cache. From their, every time it updates it updates the objects i have in my cache with what wow can see, and if you can no longer see it, it will still draw its last known location.
Heres a view of the entire (maybe a block or two missing) of timeless isle with all its objects, npcs, and players.
I'm going to add an entry to my Object struct for time since last update, and if its been more than like 2 seconds or so it will draw a very basic flat triangle so as not to clutter the screen to much and also reduce the processors load by calculating only 3 points instead of like 8.
This way, you can exit wow, log on later to go mine some nodes or some shit, and you just put "deposit, vein" in the text filter, and it will draw every one of those objects anywhere its been recorded at one point before.
My only question is, can I rely on every object keeping their GUID between sessions? I'd imagine so being the GUID is 4 dwords, but I dont know.