Saturday, March 26, 2011

Progress Report (03/26/2011)

The best news of the week: Kristen is not permanently leaving us! She's only stepping away from the project while she's working on her internship, but she'll be back. This makes me very, very happy!

Aside from a few coincidental things, this was not a week of productivity for this project. My birthday, my annual tax appointment, a fantastic business deal, an Epsilon Delta Pi honor society event, and my ongoing struggle to catch up on work took all the free time that I had. Therefore, this week's report doesn't have much to say. So let's get it over with.


Accomplishments:
  • Started working on the level design guide.  Will continue to refine it throughout the course of the project's implementation.  I plan to bundle LIME with the game along with instructions to tell players how to create their own arenas.
  • While I was stuck without a computer for a few hours, I drew four new arena designs that, as of right now, are unnamed.
  • Did a little research and talked to some of the appropriate people about setting up an official game development studio under which to develop and publish this project and many more after it.


Known Issues:
  • Network latency causes character upgrades to not show up right away.  The client needs to wait for the updated character to return from the server before returning to the team screen.
  • The color cycle control on the team creation screen throws an exception when there is only one color remaining to choose from.  This is only an issue when setting up a game with eight human players.
  • Chat messages get lost when a user in multiplayer mode switches between the lobby and the team/character configuration screens.
  • When a player drops off, their team data is orphaned.  The server needs to recognize this and place the orphaned team under AI control.


Next Steps:
High Priority:
  • Finish the level design guide.
  • Broadcast and handle the "whose turn" message..
    • Create the "whose turn" display to show it.
  • Implement the Move action.  This will involve:
    1. Decoupling the characters from the map structure.
    2. Implementing network messages for the Move command.
    3. Implementing the UI for selecting a destination.
    4. Done:  Implementing a pathfinding algorithm.
    5. Implementing path following behavior.
Medium Priority:
  • Sometimes network errors will cause an AI to be disconnected immediately after it connects.  This causes the lobby screen to wait indefinitely for a player who will never arrive.  The server should detect this and try again to create the AI player.
    • Solution: Refactor the engine's networking modules to use the Observer Pattern. This will also correct the "Known Issue" mentioned above with abandoned team data.
  • Investigate ways to dynamically color the team uniforms.  Experiment on the placeholders.
    • If this works, add the ability to dynamically color MHFont objects too.
  • Create the in-game chat component.
    • But first, fix the issue with the lost messages by making the data structure static.
  • Fix the team color selection for the eighth human player.
  • Create the HUD's event log display.
  • Finish voice scripts for narration.
  • Finish asset lists for current set of level designs.
  • Formalize the flowchart for the AI logic.
Low Priority:
  • I have a plan for optimizing the AI character initialization routine by consolidating some of the network messages.  I've got to try that.
  • Create the token factory and displays.
  • Implement the Draw Token action.
  • Implement the Heal action.
  • Implement the Attack action.
  • Finish the team creation screen.
    • Put in the floor image for the captains to stand on.
    • Replace plain gray buttons with captain character images.
  • Let's see if we can allow the player to change video modes dynamically from the options screen so they don't have to close the program and rerun it to change resolutions.
  • Make the AI players taunt each other in the lobby chat, just for fun.
  • Design the web site.
  • Get coin display graphics from the art team.
    • Add it to the team configuration screen.the character configuration screen and the recruitment screen.
  • Replace the temporary column header graphic on the character equip screen.

No comments:

Post a Comment