NinjaGame by Team Null Pointer Exception

Idea presentation: ninjagame.pptx

Software description document: xna_report3.pdf





2D side scrolling platform game

Player character is a black ninja which roams in a forest environment. There are some kind of enemies, player mainly tries to avoid enemies and moves with some kind of ninja rope around the forest. Game consists of menu screen and play view. Let's see what is done at Thursday evening (friday morning)…


  • XNA Game Studio 3.1
  • Blender 2.49
  • Paint 3.5.5
  • GIMP 2


  • scrolling camera Done
  • usable items ninjarope Done, grabling hook Discarded, “box weapon” Discarded
  • bitmap based collision detection Done
  • dynamic object collision Done
    • Object collision to world is based on bitmap Done
    • Object to object collision is made with BoundingSphere class Done
  • Greatly simplified physics Done
  • menu screen Done
  • possible extra level Done
  • background and menu music Done
  • Some sound effects Done

Dev Diary


  • 14:00-16:00 Level- and player class initialization, creating background textures, player character animation with Blender
  • 16:00-18:00 Making PowerPoint slides, player character animation with Blender, adding background textures to game


  • 10:00-16:00 Great difficulties with texture loader, because of the size of background texture(6400×720) SOLVED, Improving player model
  • 16:00-18:00 Level making, texturing
  • 18:00-20:00 Adding player character to game, coding game mechanics/physics
  • 20:00-1:30 Coding collision detection, menu screen and player model rigging


  • 10:00-12:00 Improving menu screen, player model rigging
  • 12:00-14:00 Model rigging. Trying to get collision detection working
  • 14:00-18:00 Still working with collision detection, although there have been some progress, modelling carnivore plant(enemy), improving menu screen, adding ambient musics
  • 18:00-20:00 Improving level design, still working with collision detection. SOLVED, model rigging and animation done.
  • 20:00-22:00 Adding stuff to level, coding enemies, making go menu/resume game
  • 22:00-24:00 Adding game pad controls to game, making more textures to level and coding harpoon item.


  • 10:00-12:00 Combining projects, implementing thumb sticks controls, coding harpoon item, fixing carnivore plant animation
  • 12:00-14:00 Making enemy ninjas, adding game pad controls to menu screen, coding harpoon item
  • 14:00-16:00 Making enemy ninjas, coding harpoon item physics, coding enemy collision detection
  • 16:00-18:00 Coding enemy collision detection, coding harpoon item physics, making new level
  • 18:00-21:00 Reorganization of classes
  • 20:00-24:00 Improving collision detection, making movable enemy, making new level
  • 00:00-02:00 Combining projects
  • 02:00-06:00 Hustle…
  • 06:00-08:00 Finalizing project


  • 12:00-13:00 Editing final presentation slides
  • 13:00-14:30 Final presentation


One playable level where player can advance using one kind of rope with simple collision detection

Secondary priorities (in order of importance):

  1. Enemies Done
  2. Enemy “AI” Done
  3. Menu screen Done
  4. More different kind of ropes Discarded
  5. “Box weapon” Discarded

Thinks we would have liked to implement:

  1. Differend model to enemies
  2. Discarded weapons
  3. Improved physics

Player model

Plant with alpha map