Developers Insight – Xavi Canal

Ryan chats briefly to Xavi Canal, creator of Towns, to talk all things game development.

In this instalment of Developers Insight I was lucky enough to be able to chat to Xavi Canal, CEO and lead developer on Towns, a game which recently got onto Steam via Greenlight. Xavi tells us how he got into the gaming industry, how Towns came about, and what skills are crucial to a games programmer.

Q) How did you get into game development?

A) I started to develop games when I was a child, with my 8-bit computer (MSX). I never developed a commercial game until now (I’m 36)

Q) Where would you advise people who want to become game developers to start?

A) You have to start your career playing games, then play more games and then play a bit more :) After that, it depends in what area of the development you fit. I’m a programmer, so, my advise here is to learn the basis of the programming and, like the previous phrase, code, code and code. As you can see, like any other non-related job you need to practice.

Q What is the most essential skill to a game developer?

A) For any programmer (not just game programmer) you should have to clear what you want in your mind before start to code. If you don’t do that and start to code you will end with a messy source code, hard to manage and hard to add new features stylishly. So, you have to be organized. And, of course you need to love the job and love the games.

Q )What engine would you recommend someone starting out to use?

A) I’m an old school programmer, so I like the custom-made engines. If you are asking about the code language to use, well, I think it doesn’t matter. If you know the basics you will more or less easily learn any code language. So, just choose the one that fits in your requirements.

Q) How did you come up with the basic idea for Towns?

A) Towns started to grow in my head after I watched some Dwarf Fortress video tutorials. I think DF is the king but it lacks of a nice interface, so I decided to code a more casual game with a more intuitive UI.

Q) What engine did you use for Towns?

A) I use Java + LWJGL (an OpenGL library)

Q) What limitations did you find using that engine?

A) Java is multi-platform, so I code the game and it should work on any operating system. The problem are the different machine configurations. Some people have issues just starting the game.

Q) How did you combat those limitations?

A) Well, Googling, testing, Googling a bit more, etc… We still have some users with problems and we are looking in how to get rid of them (the problems, not the users :) ).

Q) How long did it take you to make Towns?

A) I started Towns late in the 2011, at a really slow rate of development. Just code some things on night, after a hard day on my day-job. Unfortunately due to the Spanish crisis  my old company broke and now I’m working full time on the game.

Q) Where do you see the games industry in the future?

A) The game industry is growing fast and it will continue growing. As far as I know, the game industry moves more money than the cinema. Unfortunately, if I told to some people that I like videogames they look at me as a fool or as a child. I hope that this kind of mentality change in the upcoming years.

But wait, that’s not all! We have a Steam key for Towns to give away thanks to Xavi. To be in with a chance of winning a copy of the game all you have to do is post in the comments section below, stating why you want the game, added points for the funniest answer. The winner will be chosen on 4th December and the decision will be taken by the editors at

Ryan Archer

About Ryan Archer

Gamer. Enough said.