Friday, January 6, 2012

Progress Report (01/07/2012)

I haven't done a proper progress report since August, but that doesn't mean there's been no progress.  On the contrary, some great things have happened in that span, which can be seen in other posts that I've made in the meantime.

  • Designed a mock-up of the user interface for the token inventory display. (More to come in a follow-up post.)
  • Again investigated the bug with the actions menu, but the problem still remains.  Something is keeping the human players' characters from performing two Move actions back-to-back.  
    • The workaround of just trying again still works. It alternates -- works the first time, fails the second, works the third...and then you're out of action points.
    • The bug does not manifest in the Draw Token action. It's specific to Move only.
  • Fixed the bug where you could move your characters an unlimited number of times as long as you left one character stationary.
  • Completely refactored the engine's network modules to support a non-networked single player mode. (The last eight posts are all about different aspects of this effort.)
  • Created the token sources and token inventory system.
    • Also implemented the Draw Token action. 
    • Combat Tokens, Heal Tokens, and Grenade Tokens have been tested thoroughly and work beautifully.
    • Still need to finish Power Tokens.
Known Issues:
  • Something is keeping the human players' characters from performing two Move actions in a row.  
  • The game gets stuck in the lobby if the host is a spectator rather than a player.
  • Several bugs specific to Join LAN mode:
    • 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 lobby doesn't turn control over to the player until the host has signaled ready. (I believe this is the exact same bug mentioned above that traps players in the lobby.)
    • Chat messages get lost when switching 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:
  • Add Power Tokens to the token factories.
  • Create the token display GUI.
    • AFTER this is done, make Draw Token deduct action points as specified in the game design document.
  • Slow down the AI so humans can see what's happening.
  • Add the Draw Token action to the AI logic.
  • Fix the actions menu bugs mentioned above.
  • Create the HUD's event log display.
Medium Priority:
  • Investigate ways to dynamically color the team uniforms.  Experiment on the placeholders.
    • If this works, add the ability to dynamically color MHFont objects too.
  • Add hazards and bonus spaces to the game board.
  • Create the in-game chat component.
    • But first, fix the issue with the lost messages by making the data structure static.
  • Finish the level design guide.
  • Finish asset lists for current set of level designs.
Low Priority:
  • Model the characters.
  • Animate the characters using Shaun Hager's animations.
  • Add sound effects to the actions menu buttons.
  • Add validation to the actions menu so that unavailable actions have a different appearance.
  • Implement the Heal action.
  • Implement the Attack action.
  • Implement destructible containers.
  • Finish the "whose turn" display.
  • Finish voice scripts for narration.
  • 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 chat, just for fun.
  • Design the web site.
  • Get coin display graphics from the former 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.
  • Test and troubleshoot the multiplayer modes.

No comments:

Post a Comment