Posts Tagged ‘board game’

Development of Small Board

Posted by
Monday, April 24th, 2017 10:20 am

When I first read the theme “Small World” at the theme voting, I thought in making a circular world again (just like my last LD game). However, everybody is gonna do that! So, after a 2-hours brainstorming, the 2 first hours of the competition, I came back with the game idea.

I love the aesthetics of Besieged. All levels show a small village or a small campsite merged into a white-ish background, creating a very cool mix of white emptiness and green alive. With this mixture, you have the feeling that the whole world is just that small portion of green you are seeing. I love that, and I would like to try something alike.


After deciding the aesthetics, I had the feeling that a board game would fit well in this style, where the tiles kind of merge to the background. With a board game in mind, I decided the base rules, which are based on Zombicide: multiple missions, swarm of enemies, climax during the gameplay, varying missions, etc.

All set. A board game inspired by Zombicide and Besieged.

And as usual, even before the theme voting phase, I decided that this game would have something technical that I haven’t developed before. LD#30 was behavior trees, LD#31 was flocking algorithm, LD#32 was circular world and complex behavior trees, and, finally, for this LD#38 I wanted to give more time to animations – not the animation like in sprite sheets, but the animation effects like moving a piece, spawning an enemy, changing scenes, etc…

What went right?

  1. Although the game is not very good, I could finish it, and that was the biggest achievement this time. Sure, other Ludum Dares I worked as hard as this one, but this time the schedule was very, very tight – 3 hours to end the competition I was considering giving up because it missed so many things – but I could complete the base project scope that I have decided at the beginning.
  2. There were, impressively, very few bugs during the development, even the A star algorithm I could code in minutes without any problem. Most bugs I could fix in the last hour.
  3. I could do some cool animations and developed a nice animation scheduling (see below for more details). The animations are not perfect, but they were fun to implement, in special the enemy spawn and enemy movement are very cool!

What went bad?

  1. Very, very tight schedule so that I could barely finish the base of the game. Everything went as I expected, but who wants to barely finish something?
  2. Unbalanced and not fun, again. This is the problem I find in most of my games. I dedicate so much time on the mechanics (usually a bit complex) and the visual that I don’t the time to make it good. I should probably focus that on the next game.
  3. The game provides a few visual feedbacks only, but the player don’t have much idea of what is happening within the combat, or the player can’t even track the pawn actions properly.
  4. No music or sound, but that has always been my Achilles heel.
  5. I implemented a great customization system in which I can add new pawns, enemies, tiles, maps, or event different goals very easily to the game, but I only had time to create one map. If a jam game have lots of customization and lack of content, the customization was just wast of time.
  6. Developing a board game is really hard. I expected it to be complex and take a lot of time to code the game rules, but it is really hard to change and tweak how the rules work and interact during the development. If I will ever implement a board game for a Ludum Dare again, I will keep the rules very very very very simple.

Technical details

Some details of implementation:

The board game logic is completely independent from the visual and the user interaction, which made things really easy later. When the user select an action, the game (visual) asks the board (logic) for more information and render things. When the user perform an action, the game sends it to the board, the board perform and compute everything internally and returns a list of events that occurred internally. For instance, if the user attacks an enemy, the board returns the events pawn attack, enemy defense, enemy damaged, enemy killed, etc…

This messaging system is really great for board games, in special because I wanted to animate all actions, one by one, sequentially. Each message have a different payload, which is used to update the visual object properly. You may see the messages while playing the game if the developer tools is open.

Animations are trick to do. The problem with animations is that you must wait it to finish in order to continuing the operation of the game, thus, making its operation asynchronous. However, as any asynchronous system, other things are happening while the animations are working, such as the user clicking and moving the mouse everywhere (which causes a bug on buttons, don’t know how to solve that yet). To create this system, I added a job function attached to the scene, which can create multiple jobs and run that in parallel.

The job functions receives the duration of the job, the delay to start it, an update function which will perform the animation, and a complete function which is called when the job finished. Moreover, the programmer may stop every job at any time.

At last, I just want to recommend the Affinity Designer, it is a wonderful software for vector drawing, and it save a lot of time with the automatic exporting. I used it together with the Texture Packer and a small script to make the sprite sheet. It was really efficient: I save the document; the Affinity Designer export everything to a specific folder; then I just click export sprite sheet on Texture Packer (I only have to add new sprites if I create new ones); and run the script (I have a console ready to execute it), and done.




Developpers need sport

Posted by
Sunday, April 23rd, 2017 1:52 am

Around 40 developpers, graphic designers and sound designers joined our Real World Gathering in Tours.

And of course, after a while, this many people get slightly overexited… We had to organise a Capture the Flag, to tire them a bit down 😉

Developpers need to practice somesport !

Developpers need to practice some sport !

Sports aside, it looks like we will have a nice edition down there ! We have 5 teams + 2 solo working on video games, and 1 team + 1 solo working on boardgames.

I can’t wait to test them all !

You can follow us at @LDTours37, or check our twich stream.

making progress

Posted by (twitter: @jonbro)
Saturday, December 12th, 2015 6:44 pm

I am trying to make a gardening boardgame where every decision each of the two players makes can be treated as series of binary decisions. So you pick one of two cards, then pick an orientation (giving yourself one side of the card, and the other player the other side of the card). Or you can only choose one of two directions to move. I think it is going to be a kinda hand management / press your luck type game. I am not sure though, I still need to make sure it is fun.


How to Play Icarus Crisis

Posted by (twitter: @rojomojogogo)
Tuesday, August 26th, 2014 12:29 pm

My jam entry is rooted in board games, which makes it more complex than some people may be used to.  Since the in game help is limited I thought I would make a quick tutorial video.  If you have questions don’t hesitate to ask!

Play Icarus Crisis

1st play test + lunch

Posted by
Saturday, April 26th, 2014 7:31 am

I’m making a board game. I don’t care if it’s against the rules, I’m doing it anyway.

My board game prototype

Also here’s the required lunch photo.

My lunch


Tuesday, December 17th, 2013 10:40 am

In this tribute to the classic game Mastermind only the right combination and number of forces can defeat the war wizard, Azaroth and his legions. Use SENSE to find the enemies’ weakness and use FORMATION to reconfigure your party appropriately. The party configuration is critical because you only have one ATTACK!

Unfortunately there aren’t any instructions on how to play within the game but I did make a video that demonstrates how battles work:

I’d love to get your feedback!

Day 1 – Summary

Posted by (twitter: @jesosk)
Saturday, April 21st, 2012 12:18 pm

There’s only a couple of more hours left until midnight. So here’s a summary of what I’ve been doing today:

Started the day by getting the theme wrong on twitter, doing dishes, preparing dinner for later (see below) and going to the gym. After all of this was done I was ready to tackle the theme!

Space-themed board game of deliciousness

I knew I wanted to make something with war, space and mining resources on planets. My first thought was something like Monopoly but later steered more towards Settlers and then Risk. I started prototyping it with my 8×8 Reversi board, dice to represent planets and Reversi pieces to represent the players’ units.

Basically, you control units that you can use to attack other players or defend your planets. Claiming two planets or more with your units meant that you could produce more units each round. When a player loose all of their units they’re out of the game.

Image of first prototype

First prototype

This game was a bit too simplistic and didn’t really convey any theme so I decided to add cards to the mix. I used ordinary playing cards to prototype, writing down what each of them represented. (I plan on creating cards with graphics later.)

The production of new units by capturing planets turned into a Production card which added an additional unit to play. Then I added the rule that said that after each round you get to pick up one card for each planet you occupy. This meant that you would still produce new units after each round and gave incentive for players to occupy planets. This also meant that I could add a lot of new fun cards.

Picture of prototype with cards

Now with cards!

With the new cards I managed to sneak in another reference to the theme: the Tiny world card that actually destroys the outer most edges of the board which means that the grid that the game is played on gets smaller.

Notes from brainstorming

Notes from brainstorming

Now I just have to write down all the rules. 😀 Also the attacking isn’t really sorted out yet. But that’s next!

If you find the game interesting it’d be great if you could leave comments on the official rules document where anything is unclear or if something could be improved, or to just spam.

* Goes back to writing rules *


My October Challenge results for Five-O

Posted by
Sunday, October 31st, 2010 8:50 pm

Five-O IconI finished Five-O on October 21st and submitted it to the App Store for approval that night. As the days went by, I started to get worried that it wouldn’t be approved in time, but on Friday, October 29th, I received confirmation that the game was approved for sale. I got my first sales on October 30th! Woohoo!

View Five-O in the App Store

About Five-O, my entry for the October Challenge

Posted by
Sunday, October 31st, 2010 7:48 pm

Five-O is a board game I’ve been developing in my spare time over the last few years. It started as a side project during college. I was taking a course in artificial intelligence, and I wanted to create a game with an AI component. Growing up, I had played one of the many “Scrabble-but-with-numbers” games and had fond memories of it. Searching the internet revealed not a single good implementation of this idea for the computer, so that’s what I set out to make.

The basic rules are as follows. Players take turns placing intersecting sequences of numbers on a board. Each sequence must total to five or a multiple of five, and no sequences may be more than five tiles in length. For example, 7-3-8-7 would be a valid sequence because it adds up to 25. The sequence 3-9-5 is not valid because it adds up to 17 which is not a multiple of five. You can read more on the game’s webpage.

With the release of the iPad, I put the desktop version of Five-O on hold and started focusing on getting an iPad version done. The device is just too perfect for board games like Five-O. The October Challenge was the push I needed to finally finish version 1.0 and publish it in the App Store.


[cache: storing page]