DEV Community

Cover image for Awesome projects under 1000 stars (2) - Gridland
Guillaume Martigny
Guillaume Martigny

Posted on • Edited on

Awesome projects under 1000 stars (2) - Gridland

Gridland

This month, I wanted to do thing a little differently. I mean, I never said this thread have to be serious and that's my post after all.
So this time, I present you GridLand. A very addictive and fun time waster game.

Quiet start

Wrapped around a simple "match 3" game, Gridland allow you to build and upgrade buildings in order to improve your abilities.
Each time you match enough squares, you earn a new resources to be spend on your camp. With enough resources, you little avatar will grow your camp.

But don't match loosely, indeed, each moves make time pass a little and when night comes ... like most games ... monsters are unleashed.
At night, your grid of resources turn into a grid of monsters and defenses.
Game-play change a bit too. The careful "match as many as day last" turn into a frantic "give me a freakin' sword instead of spawning dozens of monsters !".

yeah, I know there's a sword match on the left ...

Of course, if I'm showing this today, it's not just because the game is fun. It's because the whole game's code is open-sourced on github.
Like many projects, there's a huge lack in documentation πŸ™„. However, the code is very well formatted and architectured.
You can find (and learn from) every game development traditional parts: event-manager, game-state save, localisation, audio, entities ...
It's all basic Javascript, so even if you're not a master developer, you can understand and pick good bits from the code.

Start by playing around a little before diving into code.
First it will reduce spoilers. Then You will have an idea on how the game works and what to expect from each files.

Here some advice :

  • Matching more than 3 tiles has a great bonus, try to do it as much as possible
  • Don't use magic to turn night into day, you need that XP from fights
  • You can prioritize building by clicking on them

And some dev tips :

  • The event-manager is simple, but very useful
  • the gamestate.js file handle saving, which is pain to do right
  • Check Require.js for those strange define(['...', '...'], function(

See you all next month.

ps: The next game from DoubleSpeak studio called "a dark room" is amazing. Try it as well.

Top comments (5)

Collapse
 
weswedding profile image
Weston Wedding

What a gem! Really cool idea for an article, too.

Collapse
 
weswedding profile image
Weston Wedding
                        // iOS doesn't give enough priority to requestAnimationFrame
            // CSS animations totally lock out the animation loop
            // I hate you, Apple. I hope you know this.

Been there, been there...

Collapse
 
gmartigny profile image
Guillaume Martigny

Thanks Weston ;)
Be sure to check out "a dark room" too, it's really inspiring.

Collapse
 
ycmjason profile image
YCM Jason

shamelessly dropping my own project

Collapse
 
gmartigny profile image
Guillaume Martigny

You're right to do so. The idea is nice, I added it to my list.
If I had one complain, it's that the project is still a little light on features for now. But good job so far.