The hangman in angularjs

Source Wikipedia:

The Hangman is a paper and pencil guessing game for two or more players. One player thinks of a word, phrase or sentence and the other tries to guess it by suggesting letters or numbers.

The word to guess is represented by a row of dashes, giving the number of letters, numbers and category. If the guessing player suggests a letter or number which occurs in the word, the other player writes it in all its correct positions. If the suggested letter or number does not occur in the word, the other player draws one element of a hanged man stick figure as a tally mark. The game is over when:

  • The guessing player completes the word, or guesses the whole word correctly
  • The other player completes the diagram:

This diagram is, in fact, designed to look like a hanging man. Although debates have arisen about the questionable taste of this picture,[1] it is still in use today. A common alternative for teachers is to draw an apple tree with ten apples, erasing or crossing out the apples as the guesses are used up.

Continue reading


Blackjack in AngularJs

Speaking to a friend a couple of weeks ago, he told me about an interview he did where one of the challenges was to create the blackjack game.

The algorithm itself is not too complicated, but it’s a good test to practice TDD and having never tried it in AngularJs I decided to give it a shot.

Continue reading

A platform game (more or less) in angularjs

If you read the introduction to angularjs, it’s stated clearly that angularjs can be not the best choice to create games.
I can imagine the reason easily: the performances can be very problematic, mostly if the game requires a complex DOM.

Moreover a lot of good frameworks exist to create amazing games in html5 (have you ever heard about impactjs?).

Nevertheless I have found very fascinating the idea to manage via directive a level design instead of a classic multidimensional array as I did in the pawn and tiles experiment.
Continue reading

A Memory game in AngularJs

Just for fun I have tried to recreate a Memory game in AngularJs.
As a kind of game it is not a complicated one, but it was interesting for me to evaluate the time needed in coding using the framework.

The memory game is quite famous among kids, but it is enjoyable even for the adult persons ( Continue reading

Pawns and Tiles: concerning the Skills

sapper_p2The skills are the last big component in the Pawns and Tiles game: a skill determinates a possible action of a pawn and in some way defines its role on the board.

Every pawn has a set of skills, two of them are common among pawns, “move” and “combat”.
Move from a logic point of view is not a skill, but for the application’s point of view is managed like any other skill.
Combat represents the possibility to attack an adjacent pawn.

Basically every pawn can move and make a standard melee attack. Continue reading

Pawns and Tiles: concerning the Tiles

sapper_p2The Tiles are central in the game exactly like the Pawns. Naturally refering to Tiles I’m talking about the map in general, the board where our little pawns have their conflict.

I think that to define a map, or in general the level design, is one of the big deal projecting a game. The main Character (or units depending on the game) is important, the skills are important, but if the level design sucks all the experience sucks no matter what.

For me Super Mario Galaxy is a master piece because of its level design.

So I was sure that with designing bad maps the whole game would have been a disaster.

I decided to keep things simple and to introduce more possibilites after a gameplay test.

Continue reading

Pawns and Tiles: a javascript experiment

sapper_p2I love games in any form (videogames, boardgames, role playing games, …) and three years ago I decided to try to develop a strategic game in javascript, one vs one, turn based. I told my idea to a friend (Giuseppe Perrini), very passionate in 2D art, and he accepted to help me.

The idea was quite simple, here in very short:

  • A player can challenge another player choosing a map.
  • Every player has a roster of five pawns, and every player has to line up his pawns in a specific area that changes in every map.
  • Every player has to choose the pawns (every pawn has its own skills) from a side deck following one rule: he can’t put more than two pawns of the same type in the map.
  • Every player in his turn has a limited number of moves and the goal is to occupy some specific area and keep it as long as possible to gain points.
  • After 30 turns (15 for player), the player with the higher score wins.

Continue reading