Tuesday, September 15, 2009

Hunter bot, simplified.

Everyone, thank Tasha (my wife). She said something to me the other day that really got me going on the hunter bot, and actually inspired me to write some real code. She said, "Just write it."

I've been spending so much time thinking about the hithertoo's and whyfor's about it that I haven't touched a single line of relevant code. My biggest problem is and has always been a combination of over-thinking and over-planning. Many of my project concepts are huge ideas - my web game that'll never be built is a prime example of this. It's so large that it would require a team of people as dedicated to it as I am in order to actually happen, but that's a pipe dream.

So in following Tasha's advice, I've managed to get a very simple prototype hunter bot working. To do this, I've opted for a far simpler strategy: instead of following a walkpath, the user selects a 'camp spot', and the system brings viable targets to the camp spot to kill them.

I decided to do this for one primary reason: it'll help me get something out the door. Features can always be added later - with the Workflow system I wrote for Autocrat, this is easy as pie, once I've figured out the logic. But for now, I'd like to get something out to everyone whose waited so long for it - and the camp-bot is it. I'll have a beta version available very soon.

Wednesday, September 9, 2009


Got my first comment spam today! Somebody (more likely a spambot) posted links to EQ2 plat buying sites on my post regarding running EH in a VM.

I wasn't aware my blog was popular enough to get the attention of spam bots... That's sort of flattering, in a weird and annoying way. =)

Thursday, September 3, 2009

Running EverQuest and ShadowTeq software in a Virtual Machine

Running EverQuest and ShadowTeq software in a Virtual Machine

Required Software:

* - VMWare is not free, and costs $189 for a single license, though there is a 30-day trial. Please note that I do not promote software piracy.


Described in this document is the method by which you can set up and run EverQuest 2 and ShadowTeq software inside a Virtual Machine. There are several reasons why you might wish to do this. First, if you are running an operating system which ShadowTeq does not support (such as Linux, MacOS, or future versions of Windows), you can run a virtual machine (VM) that runs a supported operating system, such as Windows XP, in order to run our software. Second, running inside a VM means you can use the rest of your computer while our software is running, rather than being locked into keeping the EverQuest 2 window always-on-top.

This process is fairly straightforward, if advanced. None of the steps below requires altering your current installation in any way, except for installing VMWare Workstation. Still, if you are not at least comfortable following a set of advanced instructions, I suggest finding someone who will be willing to help you through this. The good news however is that once your virtual machine is up and running, any changes you make to it do not in any way impact your existing system - so you can feel free to experiment inside the VM as much as you like.

This guide assumes you are using exactly the software outlined above in the Required Software section. Some of these (VMWare Workstation, Windows XP) can be replaced with higher versions, although this may change the steps. Please do not deviate unless you already know what you're doing. ShadowTeq won't be officially providing support for this, but I (Erik) don't mind helping out as much as I can - but if you deviate too far from this set of steps, I may not be capable of helping.

Step 1: Install VMWare Workstation 6.5.3:

After you've obtained a copy of VMWare Workstation, you'll need to install it. Double-click on the installation file to begin the installation process. This is straightforward - there aren't any important options to select, so choose Typical installation.

Step 2: Create a Windows XP Virtual Machine:

Now that VMWare is installed, it's time to create the Windows XP Virtual Machine. I'm using Windows XP Service Pack 2, but SP3 is also confirmed to work as well. To do this, you'll need to have either a physical XP CD in your CD-ROM drive, or have an ISO image of the XP CD you intend to use. When you're prepared, launch VMWare, and go to the File menu, select New, and select Virtual Machine. In the window that appears, select the Custom option and click Next. In the next page, ensure that the Hardware Compatability selection is set to 'Workstation 6.5', then click Next.

The next page allows you to choose where to install XP from. If you have a physical CD in your drive, select the first option button, then click Next. If you have an ISO image of the CD, select the second option button, click the Browse button to tell VMWare where your ISO file is, then click Next. The next page will ask you for your XP CD key, your full name, and an Administrator password. Fill in these details and click Next. The next page will give you an opportunity to name your Virtual Machine. I just left mine as the default, but you're free to use whatever name you wish. Additionally you can change where the Virtual Machine files are stored. By default, there's a 'Virtual Machines' folder in your 'Documents' folder that VMs get stored in. When you're done here, click Next.

The next page that appears will ask you how many processors to expose to the VM. If you have more than one processor available in your machine, choose Two. Click Next. The next page allows you to specify the maximum amount of physical RAM that the VM will be allowed to allocate. Note that this means the VM will consume AT MOST this amount, but probably less. I recommend 1024mb. After setting your desired maximum RAM, click Next. The next page allows you to determine the type of network connection the VM will have. I recommend leaving it at the default of 'Use network address translation (NAT)' as this will simplify configuration later on. Click Next. The next page is for SCSI configuration - nothing needs to change here; click Next.

The next page allows you to configure a hard drive for your VM. In our case, we want to create a new virtual disk, so leave it at the default and click Next. The next page allows you to select the type of virtual drive; this selection is largely unimportant, so choose the default and click Next. The next page allows you to set the maximum size of the virtual disk. I recommend 24gb for everything that will need to be installed, but you can choose more if you like. The other options on this page are fine at their defaults, so after you set the size, click Next. Click Next again to select the default name for the disk.

Now we've come to the end of the Virtual Machine creation; click Finish to have VMWare finalize your choices, power up your machine, and install Windows XP. This process is completely automated (if you've followed the instructions) and, when finished, will leave you at the Windows XP login prompt. To log in, type the Administrator password that you specified earlier in the password box.

If all's gone well, you should be greeted with a Windows XP desktop, and the Windows XP login sound effect. One of the first things you should do here is to increase the screen resolution. Currently it's set to 800x600 - much too small to be useful. To change it, right-click on your desktop and select 'Properties,' then select the Settings tab. Drag the 'Screen Resolution' slider until the resolution is at least 1024x768 - any less than that and the EverHarvest or Golem windows will overlap the game window by far too much.

Step 3: Install Supporting Software:

Now it's time to start installing software in your Virtual Machine. Assuming you've used XP SP2, you'll need to install DirectX 9.0c, Windows Installer 3.1, and the .NET Framework 3.5. You'll find links to these downloads at the top of this document. From inside your Virtual Machine, download the files, then install them in the order listed above. Remember, install them inside your Virtual Machine, not on your physical system! All the default installation options are fine for this software.

Step 4: Install EverQuest 2:

Finally, we can install EverQuest 2. Use the download link at the top of this document to download the EQ2 launcher (again, from inside your VM). Unzip it, then run it, and it'll install the base files necessary for downloading and patching EQ2. You should know the drill here - log in to your Station account, and let the patcher run... This will probably take several hours, but you can do other things while you wait.

Step 5: Install ShadowTeq Software:

Now it's time to get our software running. Using the download links on our home page, download the software you're interested in (again, while inside the VM), and install it according to the usual instructions.
... That's it. Really. =)

Step 6: Run:

This works the same as it does on your physical computer - run the application you're interested in running, and log in. Note that you will probably get a 'No Licenses Found' error - that's okay. Just follow the instructions found on this page and you'll be good to go. Configure the software as usual, and run it as usual - the only difference is that you're running it inside the VM.

Now here's the slick part - the culmination of all your efforts. Once the software is up and running, press Control + Alt - and your mouse will detach from the VM's mouse, and you can minimize VMWare, or tab away from it, or whatever - do anything else you want on your computer. If your system is beefy enough, you can even run another instance of EQ2 on your physical computer - or, even, in another Virtual Machine. Theoretically you can have as many VMs running at once as you want - the only limits of course are CPU power, available RAM, hard disk space, and networking bandwidth.

Step 7: Shutting Down:

Shutting down a Virtual Machine works the same way as shutting down a real computer - go to Start and select Turn Off Computer, then Turn Off. The system will perform its shut-down routine, then turn itself off. To turn the 'computer' back on again, select the VM in the left-most list and press the green 'Start' button in the toolbar on top of the window.

That's it!

No, really, that's it. Now that you've got the hang of this, feel free to experiment around. It's really hard to mess this up - and even when you do, you're just dealing with virtual machines - just reformat it if you do something unrecoverable. For more advanced uses of the VMWare software, you might want to consult their documentation, available from the VMWare website.

Enjoy, and good luck!

Wednesday, September 2, 2009

Late birthday present

One of our users has managed to get EQ2, EverHarvest, and EverCraft working in a VMWare Virtual Machine, and has shared the instructions on how to get it working with me!

Why is this such a great birthday present? Virtual Machines are like full computers running inside your physical computer - which means it gets its own (virtual) keyboard and its own (virtual) mouse. While EverHarvest and EverCraft still require EQ2 to be the topmost window on the computer, this can be true inside the Virtual Machine instance while NOT being true on your physical computer!

This means that you can DO OTHER THINGS on your computer while you run our software! Finally! =P

I'm working on getting the instructions in a more user-friendly form before posting them - which should come in the next day or so. Just wanted to post this to get the pot stirring, so to speak... =)