Arkanoid
Clone of a 1986 computer game. The player controls a paddle/vessel which prevents a ball from falling, attempting to destroy all bricks.
Platforms
- Windows
- Linux
Android(available soon)
Implemented mechanics
- Paddle controller
- Intro scene (just a dummy image)
- Very simple collision handler
- Multiple levels
- Game over
Technical notes
- All game components are implemented in both C++ and Lua (however only one language is running at a time)
- To use C++ components, remove
ARKANOID_LUA
directive at the beginning ofArkanoidFactory.cpp
file - All Lua scripts are located in Data/Arkanoid.lua
Architecture
- The game uses raw component architecture (ECS pattern)
Sprites
- Game uses a sprite atlas instead of set of images
Configuration
- Sprites and levels are declared in Data/data.json
Example: level declaration (each brick has its own code)
"levels_maps" : [
[
[0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0],
[1,1,1,1,1,1,1,1,1,1,1],
[2,2,2,2,2,2,2,2,2,2,2],
[3,3,3,3,3,3,3,3,3,3,3],
[4,4,4,4,4,4,4,4,4,4,4],
[5,5,5,5,5,5,5,5,5,5,5],
[6,6,6,6,6,6,6,6,6,6,6],
[0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0,0,0,0]
],
Control
- LEFT ARROW - move paddle to the left
- RIGHT ARROW - move paddle to the right
- LEFT ALT - release the ball
Installation
First, install OpenFrameworks framework, following instructions on their web. Recommended version is 0.9.8.
Second, download CogEngine 0.35 game engine. Open the VS solution file and fix paths to both frameworks.