\n Blocks

Quick Navigation: What is it? - Features - The name? - Screenshots - License - Download - About the code

What is it?

\n Blocks is a falling blocks game I made for a college class. It features the regular falling blocks gameplay, with levels (speeds) gradually increasing as you score more points, which you do by arranging the falling blocks to fill an entire row. A preview window is available at the top right that lets you know which piece is coming next.

What are the features?

Along the regular gameplay (rotatable blocks falling at different speeds according to level with a preview window) you can do both a soft and hard drop (speed up the falling and instant fall, respectively), there is a highscore board (with categories depending on the difficulty levels), multilingual support (currently English and Croatian, but easily translateable), sounds to enhance the gameplay (which can be turned off), the option to choose which level you want to start off with and what level you want to be the last in the game (although there is no win condition) and a nice little shake effect to enhance the joy of clearing a line.

What does the name mean?

Since using any name similar to the name of the original falling blocks game tends to get people sued and I didn't want trouble (it was a class project, not a game designed to compete in the market) so I wanted a name that doesn't exactly remind of the original. This got me thinking about what the gameplay is about - clearing lines with the blocks. Now, fellow programmers will recognize the \n character as the "new line" character, so the name would be "New line blocks", hinting at the idea of getting new lines with your blocks. Silly? Possibly. Naming project done? Absolutely :)



This project is licensed under a Creative Commons Attribution-NonCommercial 3.0 Unported License. In short, you may download and use this project free of charge and you may download it's source code and do whatever you want with it. If you want to distribute the project (modified or un-modified) you may do so only if you give the proper attribution. You may not use this project for commercial purposes.


Binary (the files you need to play)
Source code

About the code

The project is coded in C++ using Visual studio 2008. It's a pretty simple implementation of the game that I completed in a few days for a college class. While pretty basic, the code shows how to create a window, how to initialize Direct3D, a basic game loop and everything needed to actually create a game.