Because the world needs another Sokoban clone ...
Part of the Game In A Day Project
By Adrian Dale (email@example.com) 16/04/2012
It's Sokoban! Do you really need to ask?
Use the cursor keys to move your player (represented by an arrow) around the warehouse. Push all of the boxes onto a goal square to finish the level.
Please note that as this is just a demonstration project, the game only contains a single level.
Game In A Day Project
The idea of GIAD was for me to see if I could write a playable game within one day. I did this for a number of reasons:
- To get more experience of writing code to a deadline.
- To test the viability of using Cocos2D-X as a library for prototyping ideas.
- To see how much it is possible to do in one day.
- To have another finished project to add to my website.
- To learn some new technology, especially Cocos2D-X
- For fun!
As this was meant as more of a technical challenge I chose to implement an existing tried and tested game design.
Please note that this source code is not intended to be an example of how to code well. It was written quickly and various shortcuts were taken. It also may not be demonstrating correct use of Cocos2D-X. There are some bugs noted in the source code and there are almost certainly some that aren't noted!
You are welcome to take this code and do whatever you like with it.
Binary Distribution available at http://db.tt/08VXekFc
Feedback on this project is welcome at firstname.lastname@example.org
If you have downloaded the binary distribution of this project then you will need to extract all of the files in the zip file to a new folder on your computer. Then you simply double-click on the extracted SuperSoko.exe file to run it.
Written and tested on Windows 7
Building the Code
This code builds in Microsoft Visual C++ Express 2010.
I wrote it using cocos2d-1.0.1-x-0.12.0, although you should be able to get it to build against other versions.
I created it as a Project inside the Solution that builds the Cocos2D-X library.
Create a Resources directory inside the Project directory and copy the resources from the binary distribution into it.
Thank you to everyone who has contributed the open source tools and resources that have been used in the making of this project.