Project Plan
Project members: Georgios Chatzoglakis & Stefan Somo.
Goal: Make an Arkanoid clone before the end of the
course using C++ and SDL:
Georgios
is in charge of putting the parts of the program together while Stefan is in
charge of creating classes that can be implemented into the main program. The
aim is to implement all the basic features first to get a working prototype as
fast as possible and with time left add more content to the game.
Week 1: (starting December 11th)
Build
the base of the following classes.
Engine
class
Drawmanager
class
SpriteManager
class
Sprite class
InputManager
class
Vector class
GameObject
class
PlayerObject
class.
Week 2: (until 22th of December)
Build
and add the following classes and try to get some basic game elements working
like the player and the ball with some easier collision.
Boll
Class.
Collider
Class
Enemy
object class
Week 3: (22th – 27th)
Holliday
break for a few days.
Week 4: (27th December – January 2nd)
Improve the
gameplay and collision. Add the following classes.
File
handling class
Animation
class
Sound
class
Week 5: (3rd January – 10th of
January)
Polish
and improve the game
If time
permits, Start working on Visual effects, Vector effects on the ball.
Add a
GUI, Enemies with some kind of AI.
Last Week: (11th January to 18th?...date
not set )
Polish,
game testing and bug squashing.
Work divided so far:
Georgios
work on the Engine, Drawmanager, SpriteManager and Sprite class
Stefan
starts with the Input Manager class and later move on to the Vector class.
Decisions made
Plan is
to make the basics of the game work first and then add more elements after the
basic stuff like moving and drawing sprites are done.
The
border of the game space will probably be hardcoded into the game to begin with
to avoid strange collision behaviors.
The gameobject
class will have a few subclasses (all not decided yet) put will probably
include
Playerobject,
ball, Tile/obstacle, Enemy object, drop Items, score/highscore, and a class to
handle the graphical user interface
Collision/collider
class,
We will
start with box vs box collision and then move to box vs circle if we can manage
it.
Circle vs
circle and perfect pixel is a secondary task and will be implemented if
solution is figured out.
Sound class
will include sound and music manager.
A
filehandling class will be added and improved during the project. First to load
a level map from file and then if solution found it might be used to save and
load highscore to file
Animation
class will be added to handle animation of enemy objects if time permits.
Visual effects
of some sort, AI on enemies, a GUI class, a text class and a more advanced
vector class will be worked on if time permits
Some kind of start screen and end screen will be added
as well after lecture about game states.