Quandary
Posted: Sat Aug 27, 2005 6:06 am
Well, so. I played EQ2 to the point where I've got about 100 levels spread over 3 toons, and now I'm in "the grind." As usual, I find hacking the games more fun than playing them (I guess I'm just weird), so a few days ago I started digging into EQ2 seriously for the first time in months (I looked at it a while back, enough to p.o.c. some Detours code and decode a PDB that SOE leaked... I still have those structures around somewhere... hmm...)
I've found numerous DX tools that just play with DirectX, but one limitation that they all seem to have is a requirement for the app to be in the foreground. After a bit'o'hacking, I figured out how to send keyboard input to EQ2 while it's in the background or even minimized, and wrote a proof of concept detour; it works (of course) -- I had it doing some simple TS'ing while minimized. Saves framerate :) -- but what really interests me is multi-bot groups on one computer. Of course, for this, I need more -- mob info, positional info, health/stats info, etc... I quickly reversed out a static offset for LOC and I think I have one for health. I have access to a tool that does the local spawnlist (damned radiused spawnlists) and since I'm lazy, I may just decompile that to figure out what they did. Seems to work fine.
But now I'm at a loss as to where to go next. Lavish looks very... closed. I doubt that I'd be permitted to contribute much there (despite being a reversing god in my own right) since they look pretty well set up. XUnleashed is a bunch of clueless DirectX hackers with nothing more than some clever send_input crap (okay, that's not entirely fair; they have a nice UI, but UI's are easy...). Forever Hacking is, as usual, full of hot air and no real substance.
I know better than to just put my code up here for free and assume others will help flesh it out; I got burned on that really bad in the early days of MQ when I gave Plazmic and co. tons of code, and they made lots of cash off it and then distributed it to the entire world. As frustrating as it is, I think Amadeus and Lax are right to go closed-source; most of the world is leeches with a few movers and shakers mixed in. There are way more of the former than the latter, and if you tell a secret to one person, you may as well tell the world (or so I've discovered).
So I'm trying to figure out -- go it on my own? That means I need to rewrite my offset finder tools (I can't find a good memsearch tool that I like), my own UI, find all offsets/structs/fns on my own, etc. Basically, a pretty large investment of my time for something that I'm never going to make a dime off of. Or, I can just buy someone else's program and be relegated to never looking at the innards of the game because someone else will do all the thinking for me (heh -- not interested).
Decisions...
I've found numerous DX tools that just play with DirectX, but one limitation that they all seem to have is a requirement for the app to be in the foreground. After a bit'o'hacking, I figured out how to send keyboard input to EQ2 while it's in the background or even minimized, and wrote a proof of concept detour; it works (of course) -- I had it doing some simple TS'ing while minimized. Saves framerate :) -- but what really interests me is multi-bot groups on one computer. Of course, for this, I need more -- mob info, positional info, health/stats info, etc... I quickly reversed out a static offset for LOC and I think I have one for health. I have access to a tool that does the local spawnlist (damned radiused spawnlists) and since I'm lazy, I may just decompile that to figure out what they did. Seems to work fine.
But now I'm at a loss as to where to go next. Lavish looks very... closed. I doubt that I'd be permitted to contribute much there (despite being a reversing god in my own right) since they look pretty well set up. XUnleashed is a bunch of clueless DirectX hackers with nothing more than some clever send_input crap (okay, that's not entirely fair; they have a nice UI, but UI's are easy...). Forever Hacking is, as usual, full of hot air and no real substance.
I know better than to just put my code up here for free and assume others will help flesh it out; I got burned on that really bad in the early days of MQ when I gave Plazmic and co. tons of code, and they made lots of cash off it and then distributed it to the entire world. As frustrating as it is, I think Amadeus and Lax are right to go closed-source; most of the world is leeches with a few movers and shakers mixed in. There are way more of the former than the latter, and if you tell a secret to one person, you may as well tell the world (or so I've discovered).
So I'm trying to figure out -- go it on my own? That means I need to rewrite my offset finder tools (I can't find a good memsearch tool that I like), my own UI, find all offsets/structs/fns on my own, etc. Basically, a pretty large investment of my time for something that I'm never going to make a dime off of. Or, I can just buy someone else's program and be relegated to never looking at the innards of the game because someone else will do all the thinking for me (heh -- not interested).
Decisions...