Sunday, October 21, 2007

Stage 2

Started EverHarvest Beta Stage 2 last night. Got some good early feedback - and most of the testers reported a bug that causes the walker to miss a waypoint and continue on forever if the bot bumps something, or similar issues occur. I've corrected the issue, and released a new version of the stage 2 app.

So far, so good! =)

Saturday, October 20, 2007

Stage 1

EverHarvest Beta Stage 1 has begun! =) 25 beta testers have been granted access to this stage, where we test the methods the harvest bot will use to gather information from the EverQuest II client. This information gathering is critical to the functionality of the bot, and that made it the ideal place to start testing.

So far, so good! All of the testers I've heard back from have reported that Stage 1 is successful, and so I begin work on Stage 2 - the walkpath test.

More to come!

Friday, October 19, 2007

Perspective

I knew I was asking for trouble when I posted this poll on the forums. Give people a chance to give their opinion, and they'll give it. And because people are more likely to say something when they're unhappy (as opposed to happy), I knew this thread would end up being the soapbox for people's frustrations regarding our software.

One thing I'd like to point out is that providing support for software out in the wild is not easy. Our users run Macrocrafter.com software on a vast number of different configurations - operating systems, processors, video hardware, ISPs, .NET Framework versions - all of which make predicting the fixes for an issue a pretty daunting task. Luckily over the year and a half I've been working for this company, I've learned that most of the problems people encounter stem from the same set of issues, and I've learned how to respond to them.

When SOE hands us a new patch, the very first thing I do (like all the rest of you) is wait for the servers to come back up after the patch is complete. I can't do anything until then, but that doesn't tend to matter when nobody else can either. After that, I have to examine all the changes the new update brought to us. More often than not, the changes are small, and I'm able to release a hotfix after an hour or so. This is almost always the case. When it's not the case (like GU#39 for instance), it can take days for the changes to be accounted for and resolved.

None of this, however, accounts for real life. Macrocrafter.com is not my only job. I run a local network shop for small businesses out of my home as well, and sometimes that job takes precedence. That happened this weekend, in fact - one of my clients contracted a virus in all 15 of their workstations, as well as their server, and I was called in to resolve. I was about halfway finished with that job when the game update was released, and I couldn't stop what I was doing - their business (a nearly paperless dental office) relies on their computers being operational in order to function at all.

My other job is taking care of two kids, a two-month old and a 3-year old (one of which is mine, the other is sort of my step-kid), both of which demand a *lot* of attention. They come first, before Macrocrafter.com, and anyone with children will understand why.

 

So I hope this helps to provide some of you with some new perspective on why it can take a few days to fix some of these patch issues. This most recent patch delay was a combination of all these factors - large patch with many changes, my rl job, and my kids.

Tuesday, October 9, 2007

More EverHarvest Progress

Faldo helped me out today in-game with the player detection / node-stealing avoidance code, and I gotta say it works beautifully. smile_teeth I added a few more human-mimicking routines as well, all to help mask the fact that it's a bot we're running. All these tweaks will be optional, and set through a Tweaks dialog, which has yet to be written - Michael's going to start work on the bot's UI tomorrow, after I give him the details.

Faldo also showed me a quick demo of the hunter bot he's working on. If all goes well, we'll be offering it through Macrocrafter.com, and then everyone will get a chance to sample it. smile_teeth I'm really happy with how this partnership is shaping up - Faldo's an excellent hacker, and a great guy besides. A true pleasure to work with. smile_teeth

Ah well - I gotta run. It's past my bed time! smile_confused

Sunday, October 7, 2007

EverHarvest Beta draws closer

A more complete version of EverHarvest was run successfully on my machine earlier today (that is, about 5 minutes ago). I created a walkpath using my PathBot program, saved it, and loaded it in the EverHarvest test harness (PathBot will be a part of EverHarvest, allowing you to create and manage walkpaths). After doing all this, I just sat back and watched it harvest roots for me. =D

All that's left in this process, really, is to get Michael to draw up that UI for me. Once that's done, I can release this to my beta testers, and start getting some *real* feedback.

There's still time if you want to sign up! Go check out the forums!

Saturday, October 6, 2007

EverHarvest Test Run

Couple updates on EverHarvest progress. First, I've gotten all of Faldo's data integrated into Autocrat in the EQ2 Core Interface system. This data specifically includes instructions for my Memory Reader that tell it where and how to find the data we use in the Harvest Bot - particularly the details about your character (position, heading) and the things around you (nodes, mobs, players). Using this data I wrote a class that returns all this data.

Also, I was able to set up a system for moving the character around the zone. I've done this before - creating a pathing bot. Initially it looks rather choppy, almost bot-like (which would obviously be a deal-breaker) - but when viewed from another EQ2 client running on another computer, it looks perfectly normal - as if it really were a player running around - which is exactly what we wanted! smile_teeth

My first test run also confirms that my simple State Machine design works. A State Machine is a design pattern that allows you to design and program a system by way of the states it can be in. For example, our Harvest Bot has 5 states - Inactive, WalkingToWaypoint, WalkingToNode, Harvesting, and Final. Each state has its own code to run that performs the function of that state, and when it's done (for one reason or another) it switches (or transits) to the next state. The Harvest Bot state machine is the first I've ever written, and I'm happy to say that it's a success! smile_teeth

So - I NEED BETA TESTERS! Get over to the forums and sign up!

Thursday, October 4, 2007

EverHarvest Beta

The EverHarvest Beta has begun accepting beta applications! Go here - EverHarvest Beta Signup - to check it out. We're only accepting a limited number of beta testers, so sign up early!