Digital Game Distribution Support and Enhancements for Gluon
Shantanu Tushar
Short description: The project aims at taking the Gluon library ahead and adding essential features to its game distribution support as it prepares for its first release. Gluon is a cross-platform free and open source game engine from KDE. It aims to make life easier for game developers by providing a simple but powerful API to handle objects, sounds and input.
Name: Shantanu Tushar
Email Address: jhahoneyk@gmail.com
Freenode IRC Nick Shaan7
IM Service and Username: GoogleTalk jhahoneyk@gmail.com
Location (City, Country and/or Time Zone): Bangalore, India, UTC +0530
Proposal Title:Digital Game Distribution Support and Enhancements for Gluon
Motivation for Proposal / Goal:
Gluon’s vision has always been to be an open framework for creating and distributing games - supporting the flow of the idea all the way from the author to the player of the finished game. While we get closer to another alpha release, most of the features that would help in actually creating the game have been completed.
For Gluon’s first stable release, Gluon aims to have digital distribution support, and other online services. This project aims to implement all of it in Gluon’s player library (written during a project under Summer of Code 2010), and few of the relevant features (like game upload) to the Gluon Creator, Gluon’s game creation tool.
Expected Results-
- Gluon Player will be able to download games
- After playing the games, the player can rate the game
- Gluon Player will be able to synchronize achievements, highscores with the server
- Players can donate to the author of a game
- Gluon Player would have options to share screenshots with friends
- Players can rate shared screenshots
- Gluon Creator will be able to upload games to web server
Implementation Details:
- Use OCS’s content download URL support to download games
- Implement rating using proposed addition for rating to OCS
- Implement achievements support in attica - KDE’s OCS library
- For high scores, we need to implement high scores support in attica after adding it to the OCS specifications. At the KDE Games Sprint in March, 2011 it was concluded that we should also use the GGZ libraries to interact with high scores from GGZ capable servers. Hence support for both OCS and GGZ servers will be added
- Implement a payment system to direct the user to a web interface to handle donations
- For screenshots, right now the OCS specifications support previews. However, it will be better to add support to OCS to allow linking of different contents. This way, a game content can be linked to, for example, 4 screenshot contents.
- Just like any other content, screenshots can be rated as explained earlier.
- Games can be uploaded to the server by packaging them and uploading them in a way similar to the existing KNewStuff implementation. This will include some work on adding required attributes to a Gluon Project, such as version numbers etc.
- Game project metadata will me modified to include dependency tracking, so a game project can specify which Gluon Engine plugins it depends on
Tentative Timeline:
April 26 - May 22
Discuss further to include required specifications for the next OCS version. Collaborate with GGZ community and developers to integrate GGZ with Gluon.
May 23 - June 12
Implement game rating, achievements support in attica. Implement game download from Gluon Player/Creator, game upload with Gluon Creator.
June 13 - July 17
Implement dependency tracking in game project metadata. Implement screenshots linking, screenshot rating.
July 18 - August 14
Implement high scores, payment system. Invite community for testing, fix bugs.
August 15 - August 25 (pencils down)
Write documentation on community wiki, techbase. Polish UI and testing with game distribution scenarios.
Do you have other obligations from late May to early August (school, work, etc.)?
I will be having university exams in the end of May, but I'm confident that I will be able to manage my time well.
About Me:
I am a student pursuing an undergraduate degree course with Computer Science and Engineering as major in B.M.S College of Engineering, Bangalore, India. Apart from having lots of interest in computing in general, I have been a free software enthusiast from past 4 years and a member of our college's LUG and creating awareness in and around our college about Free and Open Source Software.
I've been using KDE (SC) since the time I started to use GNU/Linux (KDE 4.1 then) and have loved it from the beginning, which has been mostly due to the loving community. I've been contributing to KDE software for more than two years with bug fixes and feature requests. I have worked on Gluon as a part of Summer of Code 2010 and implemented the Player library and a Plasmoid, so I’m pretty good with handling interactions with attica and other require llibraries. I also work on Calligra, mainly doing a QML UI for our office suite. Having attended the games sprint ( http://community.kde.org/KDE_Games/Sprint_2011 ) has helped to have good interaction with KDE games developers and GGZ.
On the community part, I've conducted various KDE/Qt workshops in my own college, and other colleges with the help of the KDE community. I have co-ordinated the KDE Project of The Day at FOSS.IN 2009 and helped organize conf.kde.in 2011 in my city. The event was a huge success, and we got some new contributors and many more excited students, which we hope will join in the future.
I blog my activities and work at my websitehttp://www.shantanutushar.com and have CIA.vc stats athttp://cia.vc/stats/author/shantanu (svn) and http://cia.vc/stats/author/Shantanu%20Tushar
Lastly, I assure dedication of at least 40 hours per week to the work and that I do not have any other obligations during the period of the program, with the obvious exception of regular academics. Also, if any part of the proposal is not clear, I'll be very happy to clarify.
