Who? Experience Bio Stuff
Hi, I'm Marco!
I'm an Italian game developer living in Iceland. Odd, I know.
I've been making games since I was 12 and I still am. Please take a look at my work experience if you're curious to know more about my past and current projects or jump to my bio if you want to peek into the "good old days"!
I spend about 50% of my time working as a contractor for various game companies and the other 50% is dedicated to my own game projects.
Please, feel free to contact me if you need an experienced game programmer/designer for your project or if you just want to chat about games and game development!
If you're more the business type of guy, I also have an updated LinkedIn profile.
Real-time monitoring of my skills:
P.S.: Green means I know a lot about the subject, but obviously not everything! :)
Apparently these are updated less frequently...
I founded Licorice to be able to work as a contractor for other game companies and also to sell my own games. It's a one-man-show at the moment, even though I have a close circle of skilled people I often work with.
Here's a list of current and past projects:
Kingdom - Extended cross-platform version
Kingdom is an original and unique pixel art game designed by Thomas van den Berg, a brilliant and young dutch game developer.
Thomas developed the game in Flash and it became pretty popular. You can play it here.
After spending many hours playing it myself, I decided to approach him with the idea of porting the game to iOS. He was pretty excited about it and we started redesigning and expanding it, while keeping the original core mechanics.
After winning the Nordic Game Program, we decided to move to Unity to be able to publish the game on PC, Mac, iOS and Android. Development is going well and we'll have an alpha build to show pretty soon.
You can read more about it on our official homepage. Follow us on Facebook and watch our weekly devlog on Youtube.
WE WON THE NORDIC GAME DEVELOPMENT SUPPORT 2014!!!
In the picture from the left: Jóhannes Sigurđsson, me and Thomas van den Berg.
This will give us the opportunity to spend more time on the game and to expand our options. We're super happy about it! :)
Tech bit: I was coding the whole game from scratch in Objective-C using the Cocos2D framework and Chipmunk for the physics, but now we have moved to Unity.
Planet Soccer is a project created by Radiant Games, a small startup based here in Reykjavík.
The idea behind it is to create a soccer game that secretely teaches kids how to code.
Radiant Games won many awards and grants for this project and Licorice is proud to help design the next generation of educational apps.
Tech bit: The application is being developed in Unity since it needs to run on Windows, Mac, iOS and Android.
Mussikids is an exciting and ambitious project created by Margrét Sigurđardóttir.
The project aims to create a suite of educational games to teach music theory to kids from 6 to 10 year old.
Tabletized schools will be able to replace their traditional music programme with Mussikids.
The project is still in the design phase. Licorice will supervise the technical and design development, while the Studio Evil guys will actually do the dirty work.
Tech bit: The application will be developed in Unity since it needs to run on Windows, Mac, iOS and Android.
Reykjavík University - Computer Game Design & Development Course
Reykjavík University launched a new course in 2014, called "Computer Game Design & Development" and asked me to be a TA. I have the privilege to work with David Thue, a PhD in Interactive Storytelling.
The course aims to teach the theory behind game design, and how to develop a game from start to finish. It's not a technical course, but it's more focused on design, scope management, idea generation, pitching and presentation.
Students will work on their own game for three weeks and present it to the public during the "demo day".
Reykjavík University - iOS Game Programming Course
I've been a part-time lecturer for the Reykjavík University in 2013, teaching iOS Game Programming.
The courses aimed to teach the basics of game programming on iOS touch devices, using the
Cocos2D framework and Chipmunk for the physics.
Students had to make a complete game as their final exam.
It looks like that after the last course, I got the reputation of a mean teacher...
QuizUp - Localization framework
QuizUp is the most popular trivia game on the App Store, it's hard to find someone who never played it.
Plain Vanilla, the Icelandic company behind this brilliant game, has contracted me to create a localization framework
they will use to localize the whole application in multiple languages.
My office is actually located two floors below theirs and a very good friend of mine, Jói, is one of the lead developers. We have a history of working together on games (especially at Gogogic) and it's always a pleasure to work with him.
Hopefully I'll have the chance to work for them again soon!
Tech bit: Not many people know that QuizUp is completely built ontop of the Cocos2D framework and it's basically not using anything from UIKit!
Rolling Terror is a beautiful and fun endless runner. It was made by a cool company called 23/.
I joined its development half way through, as Lead Developer. After a few refactorings and optimizations we managed to get a smooth and polished product.
The game has been released on the iOS App Store.
Tech bit: The game is written in Objective-C and it uses the Cocos2D framework and Box2D physics engine.
One Twisted Button - Ludum Dare 28
I and Jói decided to join the competition just few days before it started.
We chose GameMaker as a development environment and studied it for one day (it's pretty simple) and hoped for a good theme to be chosen.
"You only got one" was what we got. We went through all the classic ideas like "you only have one life" or "you only have one attempt" or even "you only have one weapon", but we were looking for something a bit more original. And we didn't come up with anything :), so we decided to go for a "you only got one button" type of game... but with a twist!
The game is an endless runner, inspired by Mirror's Edge. The twisted part is in the controls: the only button you can use to jump changes after every jump. This makes the game much more fun and less predictable. I even decided to go full retard on it and included mouse buttons and special keys like PgUp, Home, Backspace...
We managed to build the whole game in about 48 hours! And we even got super good ratings!
Click on this link to go to our page on the LD website and download the game!
We're now waiting for the next Ludum Dare competition (LD29) and we're looking at Stencyl as a viable IDE to easily deploy on web.
TNUG - The Next Unfinished Game
TNUG was an ambitious project. Way too ambitious, and that's why we decided to call it "The Next Unfinished Game": we kind of knew we were not going to finish this... ever.
Despite that, I and my good friend Jói dove into it like there was no tomorrow.
In TNUG the player controls a high-altitude flying ship. The ship is fitted with "modules". Each module has a specific task: engine, navigation, turrets control, etc...
The player is supposed to follow the orders of his superiors (AI controlled). The enemy and friendly AI is very sophisticated (I spent a huge amount of hours in implementing finite state machines and bheavior trees) and can control multiple ships and come up with "plans" as well.
The game is completely physics based, and this adds a lot of interesting scenarios.
One of the main features of the game was the possbility for the player, after gaining enough experience, to enable the strategy mode. In this mode he would be able to control other ships as well and have an active role in the overall strategy.
A bunch of skilled people were involved in this project:
- Jóhannes Sigurđsson: Co-designer, artist and QA
- Matteo Sacco: Lead artist
- Nando Rossi: User interface
Maybe one day I'll pick this up again... who knows!
Tech bit: The game was built in Objective-C using the Cocos2D framework and Chipmunk for the physics.
Gogogic was a Game Development Studio based in Iceland.
I started as a programmer in the iOS team. After a few months, I became the Lead iOS Programmer and worked mainly on a great game called "Amazing Napoleon’s Great Escape from Tiny Places" (aka Tiny Places).
I learned a huge amount knowledge about Objective-C, iOS, Cocos2D and Chipmunk.
I also started getting into game design which is now one of my strongest passions. Luckily, I had a great teacher, Egill Arnarsson, Gogogic's senior game designer.
After Tiny Places, Gogogic started working on a huge MMO called Godsrule, which was then published by SEGA.
Unfortunately things took a wrong turn for Godsrule and Gogogic was forced to shutdown.
During the development of Godsrule, I created a tool to help balancing the game.
Gogogic was a fantastic experience for me, and I would do it all over again, especially for the great people I had the honor to work with.
Tech bit: Tiny Places was written in Objective-C using the
Cocos2D framework and Box2D for the physics.
Godsrule was comprised of many technologies: Flash, Java, Ruby and others.
Tern Systems Inc.
Tern Systems is one of the leading companies in the world that design Air Traffic Control systems.
I started as the lead programmer for the Air Situation Display (ASD) software (it's the software that controllers actually use to direct traffic, very similar to the ones you see in the movies), now in use in the Jeju airport in South Korea. This project lasted 2 years.
Then I moved into software design and I've been working on a long term project for ISAVIA (the Icelandic Civil Aviation Authority) designing the new generation of air situation display systems that will replace the 20-year old one currently used. I also coded more than half of it.
Working at Tern taught me what means to have coding standards, extremely readable but robust code, and what's like to work in a strictly regulated environment.
I became very fluent in C/C++ and learned a lot about templates and metaprogrmming.
During this time I was working on simple games in my spare time.
Tech bit: All software running in Air Traffic Control Centers or Towers has to comply with several constraints such as:
- Programming language used and its version
- Third party libraries must be approved by the Civil Aviation Authority
- Unit testing is mandatory
- All software and hardware must have at least 2 levels of redundancy
NovaMedia / 24Timar
Novamedia was a company designing TV On Demand systems. This was my first job in Iceland.
I worked as one of the lead programmers and software designers for the entire IPTV project.
I wrote most of the client-side code running on the set-top boxes (graphic UI, deamons and interfaces to the browser), gaining a strong knowledge on programming in limited environments such as Linux emmbedded systems.
D-Sign is the second company I founded while still in Italy.
It's a well established web agency based in Bologna. They are experts in advertising, brochures and complex websites.
After founding it with a bunch of friends, I worked as a programmer/designer on several projects.
I quit the company and sold my shares in 2003 when I decided to move to Iceland.
Default Servizi Informatici scrl
This was the first company I founded together with a few friends.
We were mainly working on web stuff, during the so called "dot-com bubble".
I left it when I and some other share holders decided to found a new company, D-sign.
My first job ever! I was a technician in a computer shop, repairing broken PCs and assembling new ones. Lots of fun! :)
I was born on the 23rd of November, 1974 in Milano, Italy.
I was a shy little kid, constanly daydreaming and playing with Lego.
My first encounter with a "computer" was in 1979, when the little girl next door invited me to play this thing called
I remember I liked it, but I wasn't really impressed and kinda forgot about it.
Love on first sight
I was in 3rd grade when a friend of mine invited me to his place to play with his new computer, a ZX Sinclair Spectrum 16K.
Its dark look, the comfortable feeling of its keys, the games... I fell in love in an instant!
I couldn't think about anything else, I just knew I had to get one.
My parents wouldn't listen to me, they wouldn't understand what a personal computer was and why I should get one.
But my uncle, somehow, foresaw the potential and bought it for me. Actually, he bought me also a 48K version, just a few months later.
I spent the first few months playing games, until the same uncle came one day with a full "programming encyclopedia".
I wasn't really sure what that was about, but I started reading it and something clicked in my brain.
I started coding in BASIC, simple text-based games, but I soon understood that the games I was playing couldn't possibly be written in that language. There must have been another way... a secret that only a few people would know...
ASSEMBLY! That's how you could create smooth scrollings, move sprites around, play music and all those other cool things!
And so I started learning Z80 machine code, which was a lot of fun, a PITA and an extremely important part of my future skills (all three things together!)
The PC era
After a few years of playing and coding on the Spectrum, my uncle bought me a PC.
An amazing Intel 80x86, 640Kb of RAM (yes, kilobytes), no hard disk, but two floppy drives. The graphics card was a CGA (4 colors!).
I spent even more time playing games even though it almost felt like moving backwards in terms of quality. But then I discovered that I could code in assembly using the "debug" command of MS-DOS.
I really liked the 80x86 asm language and I became fairly good at it.
But it wasn't until I got a 386SX with 2Mb of RAM and a VGA that I really got into game development.
The famous Mode 13 (320x200 with 256 colors) became the standard for games and demos.
During those years I learned a lot about graphics programming, optimization, how to talk to the hardware, and I wrote lots of small games and utilities.
At the other end of the spectrum
My PC was great for coding, but games were really sucky. Especially compared to the ones running on the fantastic Amiga 500!
The Amiga was a fantastic machine, with an OS that was years ahead of its time. Games had incredible graphics, audio and depth.
I spent thousands of hours playing games on my A500 (I also got an Amiga 2000 later), but I never coded anything.
For some obscure reason, at that time I found it extremely hard to get into coding on the Amiga. There were too many entry barriers and an uncomfortable lack of knowledge in the Amiga community about programming. It was mainly treated as a console!
I still have my original Amiga 500, perfectly working. I will probably be the first one to break.
Demoscene, new languages and new friends
I spent three years in Computer Science at the University of Bologna, the oldest university in Europe.
But the most important thing for me during that time was the Demoscene.
Watching those incredible demos inspired me so much that I would spend most of my time coding and learning new techniques to produce amazing graphics effect (it was still the Mode 13 era, no OpenGL, no DirectX, just pure hardware), and finally getting into a higher level language than asm: C.
I fell in love with C very quickly and started to abandon assembly. I then learned C++ and when the first 3d hardware accelerated graphics card came out, I started playing with OpenGL and DirectX.
During those years I met very skilled people with the same passion, and with them I worked on many projects and eventually founded two companies.
Now click here and start downloading demos!
People you should work with
Over the years I met and worked with very interesting, funny and skilled people. I learned a huge amount of stuff from them.
Here are some of them:
- Studio Evil: an Italian indie game studio, lots of concentrated skills, and Luca Marchetti, one of my best friends.
- Jóhannes Sigurđsson: game designer, pixel artist and QA master. He also knows a lot about WWII rifles!
- Egill Arnarsson: senior game designer. Shy, but very smart.
- Hjalti Jakobsson: probably the best iOS programmer in Iceland. And I'm not even joking.
- Matteo Sacco: one of the best Cinema4D experts in Italy.
- Nando Rossi: brilliant graphic artist and user interface expert.
Non-computer related interests
When I was about 20 years old, I was actually considering a career as an airline pilot.
Flying has always been a very strong passion and in 2005 I became the owner of a PPL (Private Pilot License).
I've been flying for about 5 years, accumulating over 200 hours in a Cessna 152 and 172K.
I almost died twice.
Then the icelandic financial collapse of 2008 made the fuel way too expensive and I had to stop.
I will go back to it in the future, but now I'm way too busy with Davide, my new hobby :)
If you are actually reading this...
...you'll get an achievement for the most enduring reader of all times!