Some good news this week, but I'll get to that later. First up: recap.
This week my goal was to focus on AI. After the first day I had a pretty basic AI set up. I'll go into more detail about how it works in a bit.
After that I started on a simple setup for AI combat and melee in general.
From there I tweaked and adjusted things with melee, added some flair with particles and hit effects and some other details.
For the rest of the week I looked for bugs, did bug fixes and so on in preparation for this announcement. I also played around with making a telescope that will probably be an item later.
On to the AI now. I didn't want to make an AI system where the AI only does exactly what I tell it. I don't want to just say "Go from point A to B, then do C." That's not very fun gameplay for the player. To fix that, what I'm doing is using behavior trees. I won't go into too much detail about what they are, but I'll post a link to more info at the end of this post.
Essentially what I'm doing is giving the AI a set of tools and behaviors on how to react to certain stimuli. An AI might have certain attributes to affect these action.
For example: A Captain of a ship prefers to stay by the helm of the ship. He'll sail the ship around happily, but if he sees an enemy he might choose to sail towards it. If his ship has cannons he would pull into range and open fire. But what if his ship is out of ammunition? He might instead decide to ignore the enemy ship, or get in close and allow for his crew to board them and fight it out.
In layman's terms, this means the AI will actively react to their surroundings. Two copies of the same NPC might react in different ways given how they see things.
This coming week won't be as planned out as previous weeks. I'll be fixing issues as they arise, working on the AI, and getting back to work on procedural generation time permitting.
Now for the good news I mentioned. I set up a site this week for Seafarer along with a playable demo build of the game. It isn't the most up-to-date build and it some things aren't enabled for it, but it does let you fiddle with some of the mechanics and such you've seen me work on.
There's a form on the page to submit a bug report in case you come across anything, so feel free to use it. You won't have much to do beyond the first layer for now, but it will let you sneak a peek at things. The build on the site will be updated every few days or so when the actual client build is a few versions ahead.
So give it a look if you want, play it for a few minutes and let me know your thoughts.