2D Game Programming:
Grad Programming Project 4

Summary: You will build a tech demo (a part of an incomplete game) for a real time strategy game.


Due: Monday May 2nd at 11:59pm (we will have one more game design project overlapping this one.)

DetailsYou will build  a  part of a real time strategy game which will include the map and enemy AI.

Your  prototype needs to have a map. The map must use multilayer tiling  including at least 4 types of terrain, one of which must be impassable. Further you must have at least two types of layered terrain. One will be road. Roads should increase the speed of units on the road by 20%. The other feature should be Buildings. Your map needs two buildings. One will be the base for the AI bad guys/NPCs. The other will be their target. Your map  have the following features.
Your AI controlled characters: You should have two types of AI controlled characters. The first type is only interested in "attacking" the opposing building. All AI controlled characters should be animated sprites.
Your "player" or demo giver should be able to spawn a player controlled sprite in some way and move it around at about 150% the speed of the defenders.

Submission:

As usual, you may reuse up to (But not more than) 20% of your code from other sources. Be sure to reference any such code.

Also make sure your game assets are in subdirectories of your actual project directory. Submit the entire directory tree compressed by email as usual.

Writeup:

The writeup will be extensive for this one. It needs to include
  1. Your name
  2. A Manual for the game
    1. how do I start it (which file do I run)
    2. how do I manipulate the player sprite
    3. How is your map setup - how can I change it
      1. how is the multi-layer tiling handled.
    4. which is your non-traversable terrain type.
  3. how did you implement the game. especially including
    1. how did you implement your finite state machine (objects, arrays, if statements etc)
    2. how did you implement the spreading activation of the graph?
    3. how do your AIs search the graph?
  4. References to any code or assets you used from elsewhere
  5. Anything left undone