GENERAL
project description
list of features
group management
group members and tasks
project schedule
architecture
screenshots
final documentation
- word format

STATUS
physics
input
integration
art
graphics
networking
audio
interface

message board
links
dmf in the news

Main

  • Init
    • display
    • input
    • sound
    • network
  • introduction sequence

Main Menu

(Will be a menu overlay over some type of background)
  • Join Game
  • Options...
  • Player Options...
    • change nicks
    • skin
  • Quit

Game

check input state

	if (b_menu)
		call menuhandler
	else
		do game stuff (update game's current state from server)
		eg.
		if (input['a'])
			Monkey->physics->moveforward();
	...
	...
	...
	call graphics engine to draw world with new updated state

Audio

rough high-level architecture:

Singleton MonkeyMusic object to play .wav or .mp3 files as a loop in the background (sound located where monkey is located). MonkeyEffects object attached to each Monkey (player) instance, to play from monkey and weapon resources (i.e., walking sound, damage grunt, weapon discharge, etc.). WeaponEffects object attached to each instance of a projectile/mine/bomb/etc., to play from weapon resources (i.e., explosion, whistle, etc.)

Network

Server
  1. receives data and passes instructions
  2. keeps track of data
    1. Position of each character
  3. all physics will be done with server
  4. user just passes data to server, and server decides what user should do and broadcasts updated state to everyone
Client
  1. gets user inputs
  2. transmit user actions to server
  3. gets updated state from server, and updates display

File Structure

  • root
    • server
      • network
      • physics
      • graphics
      • resources
    • client
      • resources
        • sounds
        • models
        • maps
      • gfx
        • menu
        • world
      • input
      • network
      • intro