Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Perfect World > PW Hacks, Bots, Cheats, Exploits
You last visited: Today at 16:54

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[RELEASE] Jawq (WQ bot for PWI)

Discussion on [RELEASE] Jawq (WQ bot for PWI) within the PW Hacks, Bots, Cheats, Exploits forum part of the Perfect World category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Mar 2009
Posts: 112
Received Thanks: 123
[RELEASE] Jawq (WQ bot for PWI)

Jawq (Just Another World Quest) bot is, as the name suggest, another wq bot.

I first started on this way back when the patch for PW was released and 7 new wq NPCs were added, since Interest07's bot no longer supported those.
While working on it, AlainProvist released updated version to support that patch and I put mine on the back burner.
After a while though, as I had a different design in mind, I picked up where I left off and eventually managed to finish it. Sort of.

Download link: , v1.0

Known "eye candy" issues, in order to limit number of offsets needed (and to save you from having to hunt them down ... offsets, not issues ):
- npc dialogue does not close after interaction - It does not affect quest progression or interfere with operations in any way, so no code was put in place to manipulate dialogue windows.
- dashed line indicating travel path always points to upper right hand side of map - again, it does not affect the actual travel direction.

The general guidelines for Jawq were these:
1. build wq logic in a language that majority of people here understands and can follow (AutoHotkey), it'll be open source so people can modify it.
2. build game interface in a language that is fast and can be compiled into dll (thus hidding "complex scary" implementation details from plain users)
3. be able to run wq mission on multiple clients at the same time (who doesn't multi box these days )
4. low computer resource usage
5. try to take as little time as safely possible to finish the mission (fly at altitudes lower then maximum, run across short distances rather then fly and waste time, ie,. vol6->vol7, vol22->vol23)

Some more bla bla ...

Introduction .. of sorts

Jawq requires administrative privileges and if it's not run with them, it will attempt to relaunch it self as administrator.
If UAC is enabled on your system, you will receive a confirmation dialogue, like you would if you'd run it with admin rights. Obviously, you need to click ok or it won't work.

If ran as raw script (not compiled):
- On 64-bit systems, it will attempt to relaunch it self with 32-bit Unicode interpreter.
- On 32-bit systems, it will attempt to relaunch it self with 32-bit Unicode interpreter, if it detects that 32-bit ANSI interpreter is running.

If ran as compiled exe:
- On 64-bit systems, if it was compiled using 64-bit .bin file, it will throw exception upon failing to load PwInterface.dll
- On 32-bit systems, if it was compiled using 32-bit ANSI .bin file, it will report error upon startup, notifying you that it requires to be compiled as Unicode.

Compilation instructions:
- Regardless of OS, select Unicode 32-bit .bin file!
- If compiled on 64-bit systems (windows 7 tested), exe will run normally on 64 and 32 bit systems.
- If compiled on 32-bit systems (windows XP tested), I've experienced random crashes when attempting to run it on 64-bit windows7. Setting compatibility mode to windowXp solved it. Problem arises from Ahk2Exe, so none compiled scripts are NOT affected.
- If in doubt, use 64-bit windows 7 to compile, but again: make sure you select 32-bit Unicode .bin file!


How to: Setting up and using [Dummies/Kids users]

How to: Setting up and using [Generic users]

How to: Setting up and using [Leet users]

How to: Setting up and using [Typical users]

How to: Offsets [and the rest of Jawq.ini]

How to: NPCs and way-points [or "what the hell is lib/npcs.ahk"]

How to: Error fail-overs

How to: DLL results and errors

Please note that classes (even support ones like TForm or TControl) were written with this bot in mind. What that means is they've only been implemented and tested to the point that they support what bot needs. No less, no more. If you want to use them in your own projects, you have been warned.

Bot is version checked (and protected) in that it should only run on AHK version 1.1.09.00 or higher. Version 1.1.09.00 is the version it was developed in, so I know it works on this one.
Does it work on older ones? I don't know. If you'd like to test, comment out lines 2-5 in file Jawq.ahk to remove version protection.
If you get include error at start up instead of version pop-up, your AHK version is WAY too old and you need to update to use Jawq.

What can I say about libraries? Software engineering at its finest they are not. Hopefully, not at its worst either.
Good or bad, they can be found nesting in lib/ folder.

Thanks go to:
- HotKeyIt from AutoHotkey forums for providing a great structure handling library (_Struct.ahk and sizeof.ahk). See those for details.
- Interest07's WQ bot for idea. Oh yeah, I also nicked process scanner from his code, thought I'd mention it
- Swoosh for a code snippet on how to achieve vertical flight. No doubt that saved long hours of trial and error.

Edit 21.06.2013:
Shareen is offline  
Thanks
23 Users
Old 04/15/2013, 17:59   #2
 
Sᴡoosh's Avatar
 
elite*gold: 20
Join Date: May 2009
Posts: 1,290
Received Thanks: 325
I want to be far even as decided to use even go want to do look more like!

Great work man.
Sᴡoosh is offline  
Thanks
1 User
Old 04/15/2013, 20:40   #3
 
Interest07's Avatar
 
elite*gold: 0
Join Date: Mar 2010
Posts: 862
Received Thanks: 575
Ooph, using AutoHotKey, you *********!

I'll be sure to download when I have the time to look it over AHK went OOP then eh?
Interest07 is offline  
Old 04/16/2013, 01:46   #4
 
elite*gold: 0
Join Date: Mar 2013
Posts: 17
Received Thanks: 3
That is the best described release i ever see
Great work and Time you spend on this !
Afro-Head is offline  
Old 04/16/2013, 07:56   #5
 
elite*gold: 0
Join Date: Oct 2010
Posts: 555
Received Thanks: 163
Thank you very much. Nice work.

It work fine.

I compiled it with 32 bit Unicode. This way it work on 64 bit machine too.

Sometimes I got at NPCs the Error 6. But I must take a look first which Error this is. One time got the NPC 10 (merchant) removed But now it work since longer time without Errors
martmor is offline  
Old 04/16/2013, 08:46   #6
 
elite*gold: 0
Join Date: Mar 2009
Posts: 112
Received Thanks: 123
Quote:
Originally Posted by martmor View Post
Sometimes I got at NPCs the Error 6. But I must take a look first which Error this is.
Error 6 would be "Trying to start dialogue (TalkToNpc) while a dialogue is already open". It checks "freeze" flag for that one and if set, assumes it's becasue dialogue has been openned by someone else rather than bot.

Shouldn't happen under normal operations, did you fiddle with it while it was running?

Quote:
Originally Posted by Afro-Head View Post
That is the best described release i ever see
Great work and Time you spend on this !
Thank you.

Quote:
Originally Posted by Interest07 View Post
Ooph, using AutoHotKey, you masochist!

I'll be sure to download when I have the time to look it over AHK went OOP then eh?
Yeah, seems they are heading in that direction. I don't know if they just reached a point where they said "right, it's time to go OOP" or pehaps there was some new blood injected into the group, someone keen on raising ahk fame, but either way I rather like it.

Quote:
Originally Posted by Sᴡoosh View Post
I want to be far even as decided to use even go want to do look more like!

Great work man.
Thanks. I don't know what you are smoking, but I want some
Shareen is offline  
Thanks
2 Users
Old 04/16/2013, 09:13   #7
 
elite*gold: 0
Join Date: Oct 2010
Posts: 555
Received Thanks: 163
Hi Shareen

I finished now the first Char with your bot. It work great. The bot have a different flight high. As needed between the NPCs. sometimes 55, 60 or 77. Realy nice.

About the Error. No I did not made anything manual. One time I must relogged as the NPC wasn't there. Maybe a bug from PW? Not sure. I will try it tomorrow again.

How do you come to the coordinates like these:

-1715.609, 600, 62.466

They are different from interest07 coordinat system
martmor is offline  
Old 04/16/2013, 10:27   #8
 
elite*gold: 0
Join Date: Mar 2009
Posts: 112
Received Thanks: 123
Quote:
Originally Posted by martmor View Post
... One time I must relogged as the NPC wasn't there. Maybe a bug from PW? Not sure.
I had that happen, I think about 5 times (over a period of over 3 years), with various bots.

It never happened when not using bots however, so I assume it's not inherently PW bug.

Quote:
Originally Posted by martmor View Post
How do you come to the coordinates like these:

-1715.609, 600, 62.466

They are different from interest07 coordinat system
These coordinates are the format used by game client internally, in memory. It's the "real" coordinates, the ones you see in client are derived from these.

Reason I went with these is they allow for much greater precision in setting locations and that could come in handy sometimes.
Say you'd want to use some location as a base and calculate a random offset for landing, so that if running several characters, they wouldn't all land on exact same spot. With “in-game” coordinates +/-1 meter is the same, where as using these, every centimetre counts.

There are probably other scenarios I haven't thought of, but having precision and not needing it is still better, then needing and not having it.

One must keep in mind that .dll can be used to build a different wq bot all together, so things like that could surely be of use.
Shareen is offline  
Thanks
1 User
Old 04/16/2013, 10:29   #9
 
Sᴡoosh's Avatar
 
elite*gold: 20
Join Date: May 2009
Posts: 1,290
Received Thanks: 325
In case you wish to convert the internal coordinate representation that Shareen uses to the ones you see ingame, or vice versa :



Edit : Logically, bot needs the internal X/height/Y memory format though, so anything you change needs to be in this notation also.
Sᴡoosh is offline  
Thanks
3 Users
Old 04/16/2013, 10:41   #10
 
elite*gold: 0
Join Date: Mar 2009
Posts: 112
Received Thanks: 123
Quote:
Originally Posted by Sᴡoosh View Post
In case you wish to convert the internal coordinate representation that Shareen uses to the ones you see ingame, or vice versa :



Edit : Logically, bot needs the internal X/height/Y memory format though, so anything you change needs to be in this notation also.
That would work, but note that when converting in-game to d_goto (as it's called there) result is limited in precision.

You could also use bot itself, by calling:
Code:
player.getPlayerData()
to get current position and then displaying it from:
Code:
player.position.x
player.position.z
player.position.y
Above assumes that player is a TPlayer object and instance is hooked to a client, you'd need to sort that out beforehand.

If this is something you need or want, I guess I can add a few code snippets on how to do it.
Shareen is offline  
Thanks
2 Users
Old 04/16/2013, 11:38   #11
 
Interest07's Avatar
 
elite*gold: 0
Join Date: Mar 2010
Posts: 862
Received Thanks: 575
My only gripe with the bot is the messed up x, y, z system it's not x, z, y!!!

But I know that's apparently a popular way of doing things here
Interest07 is offline  
Thanks
1 User
Old 04/16/2013, 11:55   #12
 
Sᴡoosh's Avatar
 
elite*gold: 20
Join Date: May 2009
Posts: 1,290
Received Thanks: 325
No, I don't like it either. But PW, amongst many other games, does it like this, so we must adapt.
Sᴡoosh is offline  
Old 04/16/2013, 12:18   #13
 
elite*gold: 0
Join Date: Mar 2009
Posts: 112
Received Thanks: 123
Quote:
Originally Posted by Interest07 View Post
My only gripe with the bot is the messed up x, y, z system it's not x, z, y!!!

But I know that's apparently a popular way of doing things here
Really, again with that?

Hehehe, I knew that would get you going.

I had to change something, else people would say I just stole entire WQ bot
Shareen is offline  
Thanks
2 Users
Old 04/16/2013, 14:09   #14
 
Interest07's Avatar
 
elite*gold: 0
Join Date: Mar 2010
Posts: 862
Received Thanks: 575
Horrible people, wish there was a downvote for you!
Interest07 is offline  
Thanks
1 User
Old 04/16/2013, 21:33   #15
 
elite*gold: 0
Join Date: May 2008
Posts: 21
Received Thanks: 0
Thanks for really great work here...
One thing: World Quest is only exp/spirit, and not too much of it tbh... Is it even worth doing?
Stefanowski is offline  
Reply




All times are GMT +2. The time now is 16:54.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.