Marble Game

Hi again !!

This is my GSoC project status report. My project aims to design an educational game using marble which will help you learn geography. You can browse maps and enjoy quizzes to test your knowledge.

I have added two new games “Identify the flag” and “Identify location of a country on map” and implemented the panel, on left showing different options for user, using QtQuick2.0 and QQuickView .

There are two options “Browse Map” and “Play Game”. “Play Game” option offers three games  – 1. “Identify the country shape” 2. “Identify the flag” and 3. “Identify location of a country on map” .

“Identify the country shape” game highlights a random country on map and asks user to select right answer option , out of four given options, for it.

“Identify the flag” games displays a country’s flag and gives answer options for it. Again user needs to select the correct answer option.

In “Identify location of a country” the user is asked to click on a particular country on map.

The score ( correct answers / total questions asked ) of user is displayed for every game.

Here is short video showing game .

Again, if you have any suggestions/ideas please share 🙂 .

Posted in Uncategorized | Tagged , | 9 Comments

Marble Game – Identify the country shape

Hi everyone !!

My GSoC project is to design an educational game using Marble . For that I have already designed a political theme for marble and it’s currently in git master ( and also in KDE/4.14 branch ). Based on this political map, I have a basic game working.

Currently the application provides two options “Browse Map” and “Game” . By clicking on browse map button you can explore the map – see location of various countries on globe, their shape and also a basic description about them by clicking on the their name.

Game option currently has only one game available – Identify the Country Shape . The game randomly highlights a country on map and displays answer options for it. The user needs to select the correct answer option which displays the name of the highlighted country.

Here is a short game video .

In my last blog post  someone reported in comment that only a part of Italy, in fourth image,  has been highlighted ( excluding islands Sardinia and Sicily ). I figured out the problem and fixed it. Now, countries having territory represented by different polygons on map are highlighted correctly. e.g, Greece in the following image.


The game isn’t available in git master yet because the patch for game is under review. Once the changes are okay to be pushed, you can enjoy the game. 🙂

Next, I’ll work on improving UI . Also, I will add features like display the user’s score, don’t let the user do more than a certain number of wrong attempts ( to make it more challenging ) etc. The more advanced version would be to register a user’s data ( user’s name, past scores etc. ) and show the progress, user has made, each time user attempts the game.

Yeah, of course there are more interesting features which can be added to game, so please share the idea you have in mind. 🙂


Posted in Uncategorized | Tagged , | 7 Comments

Political Map for Marble

I am glad that I accomplished my first task to integrate political map with marble. 🙂 . I finished its implementation last week.

Here is a look must1

The main feature I implemented is the support to specify different colors for different regions of map in .dgml file ( theme file for Marble ) . So, if the placemarks in map data file contains color indices then the placemarks are assigned different fill colors based upon the color index they have. The different color indices of placemarks are mapped to the colors you specify in theme file. Political map uses the same logic. So, one can customize the colors with which the countries are being colored by specifying the custom colors in theme file. Further to achieve this I also modified the pn2 format ( a memory efficient format that Marble uses to store map data ) to store color indices in it


Other than this I fixed the issue of correctly determining inner and outer boundary of a polygon. I found this problem when I noticed that some of the countries are not being displayed on map and I need to zoom in to see them. This was the most challenging thing in whole task to figure out why it’s happening.  At last I tracked down this weird problem and fixed it. Meanwhile I also designed a patch for not parsing the map data file again on theme change ( if it has been parsed already ) if the new theme just changes the fill color or pen color, instead just change the style  info of placemark.

Currently you can browse through political map and get basic information ( like population, some basic history, area, flag etc. ) about a country by clicking on its name. The image below displays the information about Egypt :


So, continuing my work this week I started working on highlighting a particular region on map when you click on it. I have designed an initial patch for it. Tosten and Dennis gave it a quick review and suggested me some changes. So, I need to fix them all first. Anyways, here is a quick view what it looks like ( Italy has been highlighted image below ) :


So, I’ll be busy this week fixing the issues with ‘highlight on click’ patch. Stay tuned as more interesting feature to come ahead 🙂 .

Posted in Uncategorized | Tagged , | 10 Comments

Yay I’m a GSoCer

I got selected for GSoC 2014. Thanks to my mentor and KDE team for giving me an opportunity to work on Marble Game project. My mentors are Torsten Rahn and Albert Astals Cid.

This summer I would be implementing an Educational Game for Marble. Marble is a virtual globe. You can browse and search places, find routes, measure distance between two points, view wikipedia articles and much more: of course it’s not an exhaustive list of Marble’s features and that’s why we call it  Swiss Army Knife for Maps .

The game will allow a user to learn about various places by exploring and clicking on them. Also user can test his/her knowledge by choosing options from quiz section. Since Marble already has QML bindings so it will allow to have a nice UI for the game.

Designing this game will require to extend Marble’s library. I discussed with Torsten Rahn and decided to first create a political theme for Marble. While doing my first task I’m really getting a good understanding of code base. Once we have political map integrated with Marble, we’ll use the click signal to fetch the information of the clicked area on map.

I’m really enjoying this. I get to know new people make new friends and involve with community. Thanks again to all Marble developers and Google for organising such a great program.

Posted in Uncategorized | Tagged , | 3 Comments