A practical solution to a problem with rendering and hacking.
Due to optimization code for video render and load WoW Does not render models that you don't see. One of the ways its optimized is done with indoor/outdoor rendering differences and "render portals".
So normally with flyhack and noclip you would end up with something like this:
While im still digging for a method on doing this globally i eventually found a way to index all WMO files loaded and then do a per model flag patch to render it even tho im not "inside" or facing a render portal.
Another Example, Before:
After:
You normally don't see the mage tower when inside stormwind. A shame since i think it does stand out from this view over the dock area.
I tbh only thought that there were 2 cathedral's.. but there are 3
The tram before:
After:
And here to end it Undercity:
There is not so much to say about how it works.
Using WoWInfinity as a front end and then loading up each WMO, loading and patching their flag acording to your INdoor/OUTdoor state (so it does not **** up when we go inside).
EDIT
Reminds me... one can accturally use thoes names that are only used by the real WoWMapeditor to name WMO sections.
ie:
Last edited by UnknOwned; 05-09-2009 at 10:09 PM.
Cypher: Gz with a new mouse. I take it's you bragging about your rank
UnknOwned: That's very impressive.
Last edited by miceiken; 05-10-2009 at 05:06 AM.
hot (...)!
Ok, I'm learning C# on school atm, and as hobby.. but how long did you guys 'learn' before getting into this
I would like but I know this will cost me very much effort to accomplish this :P
It is clear a lot of people here have quite a thorough background and experience in reverse engineering other programs, and to start off your reversing career on WoW will just get you lost. Luckily you have people here who do all the hard work for you and you have all the offsets and information you need to allow you to write some code to "**** with some shit".
With the information and amounts of copypasta you can get from here, it won't be hard for you to write anything basic, radar, GUIDs->movements->eventual bot.
C# is decent, you might want to search for Shynd's code, iirc he uses c# predominately, correct me if I am wrong.
Just read the stickies, checkout other sites gamedeception, checkout blogs, shynds/cyphers. Copy pasta some code, change it see what it does, see why it does what it does.
No idea of the rules on posting this sort of info, or how up to date I am, but you might want to take a look at http://forum.gamedeception.net/showthread.php?t=14468
This seems to be your first real programming language, you will want to get down the basics of OOP, this will allow you to think in more dimensions. I won't go ahead and tell you to look into C++/ASM as C# I found was a good place to start and learn the basics. What you will find is there are a lot of similarities between the C family. What I would suggest is to get a good understanding of programming, frameworks, libraries, and if you're interested in reversing then take buy a book, Reversing - Secrets of Reverse Engineering is a good one.
This seems like I'm going on a rant so I might just stop now
EDIT: hopefully you don't continue to write your if statements like the one in your signature :P
Last edited by dekz; 05-12-2009 at 07:35 PM. Reason: not english wtf
With the unnecessary bracers? Granted this doesn't affect optimization, just a practice.
I found the best way for me to learn a topic which was above my current understanding was to use an established resource, (taking snippets, dissecting and seeing how they work), I wasn't suggesting copying someones C# method and copying another auto it method and wonder why your solution didn't compile. I was just making the point that there is such a wealth of documentation on this forum that you could theoretically compile a working bot, this is of course not practical.
I feel I'm going offtopic from this original thread so I will end my input on this note.
FartBlast you've come to the right place to start once you have a foundation of knowledge. This won't be of any help to ask your basic learning questions of the C# language, or any other basic knowledge questions. You may not be taught some of the low level discussions which are on this board in your introductory class, unless you're also taking a class which looks at software architecture at a lower level. Good luck and I hope you enjoy your upcoming learning frustrations.
Now back to the screenshots.
MS recommends that you use braces instead of just inlining if statements. (Run StyleCop, it'll complain.)
I use braces no matter how 'small' the if statement is. It improves readability 10 fold IMO.
Coders tend to do this;
Which at a glance, some may miss the whole 'if' part and misread the code. Using the braces forces seeing there's a logical statement there.Code:if (statement) DoWork(); DontDoWork();
If you had written this then I could see people missing the conditional execution of DoWork.
But with proper indentation I do not see how could someone miss it regardless of having bracers or not.Code:if (statement) DoWork(); DontDoWork();
Bracers with bad indentation will make for unclear code, proper indentation without optional bracers will be as easy to understand as with bracers.
For one liners bracers will only make the code more clear in cases which should never have been a one liner to start with.
Since someone revived this thread, heres my little nav mesh editor for my bot lib using A* navigation. Showing some mapped areas around XR, Red blob down right is WC...
Written from scratch in c# with help from wow dev wiki page.
Looks nice
Impressive @ ggg898
Most impressive
"Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live." - Martin Golding
"I cried a little earlier when I had to poop" - Sku
Just posting a little update on my GUI and a few new things i've gotten around to doing!
Speedhack ;D I'm aware Warden now scans for it, but this gets around it, not that they currently scan for it anyway, but I'm pretty sure it's fine.
Monopoly, fully automated auction house bot. Parses data from xml, various settings, item information, etc. Has a FSM, everything is working nicely, parses AH page by page, goes to mailbox, gets mail, buys out items, does bidding too.
All the AH related stuff is done in Lua, including getting items from Mailbox, and the logic on what to do next is completely done in Lua. Pretty happy with it so far.
Impressive stuff above guys, good job!