Hi folks,
Here's another tool that might prove useful for people who are just interested in disecting the game... If you just want to download bots and run them, you may as well leave now.
I'm currently working on a system to build custom in-game interfaces using the client's own mechanisms, so it was useful to me to investigate how the whole GUI system hangs together. Sometimes it's quicker to build a tool to investigate things for you than to spend weeks finding offsets, hence this little tool :P
In a nutshell, this tool will search the GUI base
for window objects, retrieving their offsets along with some information about them, plus information about their child objects, e.g., buttons, lists, labels, etc.
[Only registered and activated users can see links. Click Here To Register...]
Run PWI, then launch this tool and it will list on the left all available GUI wndows in the client. Click on one of them and it will give you more information about the window. You can even open and close windows using the checkboxes next to the list of window objects hehe.
Be warned, trying to open some of them will crash the client... I'm not really too fussed about fixing that as it's only very few of them and they're windows that are not of interest to me.
That's about all there is to it - I won't go into details about how it works because it's fairly straightforward and you can just inspect the code if you're interested.
It's built with C# so you'll need Visual C# or Visual Studio to use it (Download [Only registered and activated users can see links. Click Here To Register...] or visual Studio 2010 Express - They're free and they kick AutoShit's arse ;))
I intend to build on it so that you can actually activate any control on any window via the tool's interface... Just not today lol.
Chances are the project might piss off your antivirus - I have crappy Avira on my Win7 box I tested this on and it kept telling me I had an infection even though I made the bloody thing - Hence I'm uploading the full source and not some dodgy .exe so you can inspect it. I was a little surprised as it only uses some process memory writes and doesn't even inject anything. I'm really not interested in stealing your precious facecock passwords and stuff, so if you don't trust it, don't download it. -(modified Swoosh quote... Thanks :P)
Oh... In another thread I kind of mentioned that it could open the console window. Well that was an inadvertant lie because I had accessed this during the building of this thing, but it's a slightly different approach to do that. As I'm generally a nice chap, I'll explain how to do that anyway lol.
If you want to play with the console stuff, you'll need [Only registered and activated users can see links. Click Here To Register...]
A utility to "send to command prompt" is quite useful too - I use [Only registered and activated users can see links. Click Here To Register...] for this (Crappy Avira even alerted this as an infection - It's safe)
So, download sPCK to a folder somewhere, then copy interfaces.pck from your perfect world element folder into the sPCK folder.
***IMPORTANT*** Make a backup of interfaces.pck in case you screw something up.
Right click sPCK.exe -> Send to command prompt.
Now, to extract the .pck file...
This will generate a folder called interfaces.pck.files
Open interface.pck.files\interfaces\ingame-v1.dcf and find the line:
and change it to
Save the file and close it, then delete your interfaces.pck file (the one in your sPCK folder!!!) and run sPCK again
This will repack the files into a .pck
Once that's completed, copy the interfaces.pck file back to your element folder and launch the client. Woohoo! You now have a console that you can play around with.
It will stay open and you can't unfocus it, so if you want to remove it, you need to reinstate your original interfaces.pck file. If I can be arsed, I might find the GUI offset to close it lol.... But I can't be arsed today.
The commands for the console are available in the configs.pck file (extract with sPCK again, look for console_cmd.txt) but for your pleasure, here is the list of commands: (don't include the quotes)
Obviously the GM ones wont work so don't bother trying them.
It's not particularly useful as such, but it's quite fun to play around with (d_boundbox looks quite cool ^^)
Well... I say it's not useful, but some of the commands there will display NPC / Player IDs above their heads - So that's very useful if you're looking for offsets etc.
Anyway - I hope someone finds it useful :)
Cheers.
Here's another tool that might prove useful for people who are just interested in disecting the game... If you just want to download bots and run them, you may as well leave now.
I'm currently working on a system to build custom in-game interfaces using the client's own mechanisms, so it was useful to me to investigate how the whole GUI system hangs together. Sometimes it's quicker to build a tool to investigate things for you than to spend weeks finding offsets, hence this little tool :P
In a nutshell, this tool will search the GUI base
Code:
[[[[baseCall]+0x1C]+0x18]+0x8]
[Only registered and activated users can see links. Click Here To Register...]
Run PWI, then launch this tool and it will list on the left all available GUI wndows in the client. Click on one of them and it will give you more information about the window. You can even open and close windows using the checkboxes next to the list of window objects hehe.
Be warned, trying to open some of them will crash the client... I'm not really too fussed about fixing that as it's only very few of them and they're windows that are not of interest to me.
That's about all there is to it - I won't go into details about how it works because it's fairly straightforward and you can just inspect the code if you're interested.
It's built with C# so you'll need Visual C# or Visual Studio to use it (Download [Only registered and activated users can see links. Click Here To Register...] or visual Studio 2010 Express - They're free and they kick AutoShit's arse ;))
I intend to build on it so that you can actually activate any control on any window via the tool's interface... Just not today lol.
Chances are the project might piss off your antivirus - I have crappy Avira on my Win7 box I tested this on and it kept telling me I had an infection even though I made the bloody thing - Hence I'm uploading the full source and not some dodgy .exe so you can inspect it. I was a little surprised as it only uses some process memory writes and doesn't even inject anything. I'm really not interested in stealing your precious facecock passwords and stuff, so if you don't trust it, don't download it. -(modified Swoosh quote... Thanks :P)
Oh... In another thread I kind of mentioned that it could open the console window. Well that was an inadvertant lie because I had accessed this during the building of this thing, but it's a slightly different approach to do that. As I'm generally a nice chap, I'll explain how to do that anyway lol.
If you want to play with the console stuff, you'll need [Only registered and activated users can see links. Click Here To Register...]
A utility to "send to command prompt" is quite useful too - I use [Only registered and activated users can see links. Click Here To Register...] for this (Crappy Avira even alerted this as an infection - It's safe)
So, download sPCK to a folder somewhere, then copy interfaces.pck from your perfect world element folder into the sPCK folder.
***IMPORTANT*** Make a backup of interfaces.pck in case you screw something up.
Right click sPCK.exe -> Send to command prompt.
Now, to extract the .pck file...
Code:
sPCK.exe -x interfaces.pck
Open interface.pck.files\interfaces\ingame-v1.dcf and find the line:
Code:
Version01\console.xml 0 0 0
Code:
Version01\console.xml 0 0 1
Code:
sPCK.exe -c interfaces.pck.files
Once that's completed, copy the interfaces.pck file back to your element folder and launch the client. Woohoo! You now have a console that you can play around with.
It will stay open and you can't unfocus it, so if you want to remove it, you need to reinstate your original interfaces.pck file. If I can be arsed, I might find the GUI offset to close it lol.... But I can't be arsed today.
The commands for the console are available in the configs.pck file (extract with sPCK again, look for console_cmd.txt) but for your pleasure, here is the list of commands: (don't include the quotes)
Code:
"d_cameramode" "d_boundbox" "d_rtdebug" "d_npcid" "d_runspeed" "d_goto" "d_fly" "d_c2scmd" "d_viewradius" "d_relogin" "d_skill" "d_render_water" "d_render_grass" "d_render_forest" "d_render_shadow" "d_render_outline" "d_turnaround" "d_testdist" "d_gfx" "d_showpos" "d_trnlayer" "d_a3dstat" "d_gamestat" "d_treelod" "d_fps" "d_playerradius" "d_showid" "d_skipframe" "d_modelupdate" "d_minidump" "d_settimeofday" "d_getservertime" "d_task" "d_mipmapbias" "d_trncull" "d_gscmd" "d_delcmd" "d_title" "d_namepos" "d_createtime" "d_lastlogintime" "d_money" "d_go" "d_query" "d_querynpc" "d_theme" "d_queryservice" "d_uidebug" // ========== GM commands ========== "gm_kickout_role" "gm_kickout_user" "gm_list_user" "gm_online_num" "gm_restart_sev" "gm_shutup_role" "gm_shutup_user" "gm_moveto_player" "gm_callin_player" "gm_broadcast" "gm_showid" "gm_forbid_role" "gm_trigger_chat" "gm_generate"
It's not particularly useful as such, but it's quite fun to play around with (d_boundbox looks quite cool ^^)
Well... I say it's not useful, but some of the commands there will display NPC / Player IDs above their heads - So that's very useful if you're looking for offsets etc.
Anyway - I hope someone finds it useful :)
Cheers.