Monday, May 7, 2012

Pre-Alpha Milestone Complete!

Finally, a major milestone has been reached. This milestone includes the foundation of the client/server architecture and allows testers to finally get in and feel the game, not that there is much of one yet. Currently, here is our feature list:

  • Create an account
  • Log into the game with encrypted password
  • Create characters (male only for now)
    • Customize look using hair, face, hair color, facial hair
  • Log a character into the world
    • Run around in the world
    • Manage an inventory of items in a bag with unlimited slots, only restricted by the weight your character can carry
    • Equip items to your character and see texture changes to your character based on what you equip
    • Equip a weapon and see the weapon in your hand
    • Interact with world objects, currently only a treasure chest that allows you to use its inventory, probably one of the most complicated object interactions necessary in the game.
  • All clients see the same things, including when other players move and equip things
  • The server and client's clocks are synchronized, and so the path you take, and see others take will be identical on all clients!

Wednesday, April 25, 2012

Pushing Forward

I took a break from Ambition to narrow things down and work on something small that I could actually finish in the next few months. However, after working on it for a month or two I realized that it was not where my heart was, and so it was not very productive for me. Anyway, I am back now, and have decided to push forward with this project and get something very playable in the next few months. Let me update you with the things I have been working on the last several weeks.

Movement Revision

After coming back from my little break, there have been a few things that have been stalling the design of the game. One of which was the movement of your character. Previously, the way you move around the game was mainly with the mouse, where you click in on the screen and the character will move towards the cursor. This scheme was modeled after Ultima Online, which is the main inspiration of the design of Ambition. There were a few things that threw me off with this model:
  1. UO utilized double-clicking for using things, which I refuse to add
  2. It is awkward to move up to an object with the mouse, then have to move the mouse next to the object and click on it.
  3. This one is the most complex. The method uses Unity's Character Controller and physic collision calculations, which are both very slow, but that is not the main reason. The main reason is simply that the server would have to emulate this method for the enemy AI, and it was beginning to get too complicated for a one person dev team to work out.
So, in the end, the decision was made to pull the plug on this movement scheme and move onto something else. I chose to go with the most commonly used method, which is point and click. This method is extremely simple to use and almost as simple to implement. It also has the advantage of making mobile a possibility again.

Character Customization

There was a sale on a model pack I've been wanting for a while and it was 50% off, so I had no choice but to get it. This pack is called the Warrior and Commoner pack from Frogames. The idea was that they had a nice avatar system already and I could just get the Ambition prototype working using this as placeholder. Well, it works OK, but it is most definitely not a permanent solution. I am not looking for a morph-target solution or anything, just something that gets the job done with enough customization, like World of Warcraft. Another thing is, Unity does not have any way to quickly write to a texture, and so the updating of the avatar texture based on your clothing takes forever and feels a bit unresponsive.

Pushing Forward

I have decided to move forward with Ambition and go all out by creating accounts on all the major social media sites like Facebook, Twitter, and YouTube. This will push me to building up some content to put on those sites and create a following for the game.