- A 'Sokoban' inspired puzzle game prototype about pushing boxes, featuring 3 different levels.
- I was the lead programmer in a multidisciplinary team of 7 people, consisting of one other programmer and multiple designers and artists.
- I did both the programming and technical design of all aspects of gameplay, and implemented audio and most of the 2D assets.
- For the crates, I designed a grid based system. Not only was this the simplest and most robust way of doing it, it was also great for usability; the designers were able to go into the engine and edit the levels themselves.
- This also made implementing obstacles super easy; they're just crates that have a boolean variable 'canMove' set to false.
- The GridManager spawns a series of GridSquares, each of which contain a value designating what that square contains. If a square is occupied, crates will not move into it.
- Since the water tiles function differently, if a crate is being moved into water, or on top of a crate in the water, the functions MoveWater and MoveOverWater will respectively handle it.

