nPush is a logic game similar to Sokoban and Boulder Dash. You need to collect all the gold on the level and reach the exit. To make it hard there are some rocks that stand in your way, and you also have some dynamite to blast them away. Main difference from Sokoban, KSokoban and similar games is that you can have multiple player-controlled characters you can move on the screen.
nPush is written in C++. The source code is freely available under GPL license, version 2 or above. The code is very simple, so if you're interested in working on your C++ skills on a simple project, please feel free to join in. nPush development is supported by Randy White, you can read his blog at quickenhomeinventory.blogspot.com. It is planned that iPhone and Android version be released this summer.
nPush is a terminal based application and uses nCurses library for user interface. Game internals are rather simple and written in such way that implementing some nicer graphic UI (like using SDL for example) should not be hard to do.
Last official release is in the download area.
You can also fetch latest source code from SVN repository at:
https://npush.svn.sourceforge.net/svnroot/npush/trunk/
Have fun playing and make sure you send your levels in (my e-mail is in the readme.txt file).