2012-12-02

DatWeb

DatWeb is a webbased management plugin, allowing you to remotely view and control your bot. This plugin is still in 'development' and I think it's fair to say that this is as 'alpha' as it gets. There is still a lot of functionality missing, but it would be nice to get an impression of people their experiences with the UI in an early stage, before it will take a week to change stuff around when more functionality has been added (who am I kidding, MVC wins ).

How it works

After thinking about the possible options for a while I came with a solution that isn't the best, but for sure nice enough considering it doesn't take as much time as writing a service from scratch, gives good security from my side (no database passwords client-side etc) and best of all, it actually works.

Right now it's so that the LUA module calls some cute C code, which then goes into managed C++ (C++/CLI, Haters gonna hate ), and then by a .NET DLL to the webserver. Downside of this all is that it requires a bit more work on the user side to get it working. It's not technically advanced, but make sure to read the instructions carefully, to avoid unnecessarily crashes.

Setup

Install the Visual C++ Redistributable for Visual Studio 2012,

32-bit: http://download.microsoft.com/download/1...st_x86.exe (compiled as 32-bit, so you need these even on a 64-bit OS)

Download the attached zip-archive. You will find 2 folders in it.

The contents of the "Guild Wars 2" folder have to go in the same folder as your Guild Wars 2 client. This is due to how dynamic link libraries are loaded. In that same folder is also a modules folder, that is the C code that the LUA file is going to have some fun with. The end layout for that folder will be:

Guild Wars 2

Guild Wars 2 -- DatWebServiceClientBridge.dll

Guild Wars 2 -- DatWebServiceClientProj.dll

Guild Wars 2 -- DatWebServiceClientProj.dll.config

Guild Wars 2 -- modules -- DatWebToC.dll

The other folder is your usual module. Inside of the zip's 'Bot' folder you find the ever-returning 'LuaMods' folder, with the module inside of it. Giving us:

Bot

Bot -- LuaMods

Bot -- LuaMods -- DatWebToc

Bot -- LuaMods -- DatWebToc -- datwebtoc.lua

Bot -- LuaMods -- DatWebToc -- module.def

Bot -- LuaMods -- DatWebToc -- settings.lua

Once you have setup the files and directories as mentioned, you are ready to fire up the game and the bot. Once in game perform your usual 'Load modules' and a window should pop up:

Now you need to setup an account. Go to the following website: http://www.datweb.net (be warned, it's designed for mobile devices, it will look stretched like mad on your pc, deal with it).

Let the iPhone hate begin.

Once the website has loaded, you should see the following:

This is the main screen for when you are not logged in. There will be some navigation options later, but for now there is nothing to add.

Follow the instructions and click on the register link. You should arrive at a registration form. Fill it in just like I did in the little demo:

When you scroll down you will see a field called "Addon Key". The value you enter here is important. It will be the password the plugin uses to communicate with the webserver. You can use the same password as your actual password for this, but for security reasons I decided to separate them. I was planning on adding a change Addon Key option, so that you can always recover your account back as long as you have the password (say you'd make a screenshot with the addon key clearly visible and post it on a forum).

The last option is a field where you can enter your forum name. This is not a must, but it might be handy in case someone has questions or issues, as it allows me to trace back what happened.

Once done click register (derrr!). You should arrive at the home screen again, but it has slightly changed now. It will show your username and the addon key that you entered, as a little reminder for whenever you need it in-game.

When you click on the settings button, you will see a little field that allows you to set the refresh rate and/or enable/disable the auto-refresh feature. I have it disabled now, but it will be activated soon enough. Currently it goes from really fast to 5 minutes, which should be enough options for now.

Clicking on the 'Back' button makes you go back to the home screen again. Click on "Core Stats" now to navigate to the only page I've managed to add so far (making all the wrappers toke a lot of time, expanding is going to be easy now ). You should see the following:

Now it's time to setup the plugin. Enter your username and addonkey into the 2 fields of the little window (don't forget to press enter to submit them!) and that's all.

From now on it will update your account's page with stats regarding your character. Refreshing the 'Core Stats' page after a little moment should give you a working sample, like mine:

Drama

Due to a recent change in the bot's module logic the game crashes when you reload your modules while a C library is loaded in as well. Hopefully Hans can work something out to see what causes this, as this didn't use to happen. Other than that I know this plugin doesn't do a lot in it's current state, but I'd appreciate it if at least 5 users could give it a quick go to see if it's all working as intended. Beta testers can save themselves the 2-3 euros it will probably cost I suppose.

Feature requests

I've posted my own plans in this thread:
http://mmominion.com/Thread-Need-some-in...r-a-module

Feel free to give any tips, requests or hints regarding changes, additions or removals. The plugin is really generic and will be easy to adapt to any games the team releases, so I want to make it decent, stable and user friendly. .

Bugs

Some fields are giving a '-1' status. They're missing API features and I try to keep memory reading from within my own library to a minimum. It's very easy to add for the team, so it will be in soon I bet.

Updates

0.00000000001

Initial Release

0.00000000002

Fixed memory reading.

Added experience information.

Added current level information.

DatWeb --- 0.00000000001.zip (Size: 53.16 KB / Downloads: 7)

DatWeb --- 0.00000000002.zip (Size: 53.2 KB / Downloads: 1)

Show more