Today I’d like to introduce a project I have been working on for quite some time now (about half a year it seems): Glou , a project centered around free and open games. The vision of Glou is to create an open gaming network. First of all that means a place where people can meet to play and enjoy games. Glou aims to be capable of all things one expects from such a network: list servers and open matches, give the ability to join and / or host matches, see what your friends are playing, player scores and statistics, player matching, community features (friendslists, chatting, etc.), and much, much more. Furthermore, due to its open and free nature, it will enable (open source) game developers to build communities around their games more easily. With the big amount of good quality open source games out there Glou and the open gaming network could help to finally create a wide community around open and free games.
Glou understands itself as an umbrella project, and consists of…
- A set of open standard protocols that describe the communication of the various components in the open gaming network.
- An open API for games, so they can easily implement those protocols.
- An open reference implementation of a Game Community Server.
- And finally a community centered around free and open gaming.
The whole network is decentralized and built upon XMPP. Detailed information about the architecture of Glou is available on our architecture page on the Glou homepage.
A Short History
The Glou Project came to life in discussions on mailinglists and IRC channels of several open source projects and communities, like Freedesktop-Games, freegamedev.net and GGZ. After a first draft of the open gaming network architecture had been worked out we contacted the most influential open source games out there, in the spirit that Glou should be a cooperation of the whole open source gaming community. Since then many developers of open source games joined the Glou mailinglist to watch the progress of the project and give valuable feedback. From this point on the team of Glou developers and supporters has been growing and drafting and coding went on steadily until today.
Currently we have reasonable drafts for the protocols. Libxoup, a leightweight XMPP library that’ll serve as base for libglou (the game API), is near its first release, while the other components are still in an early state of development.
Winter of Code
As one can imagine, the scope of this project is quite big, and we had to notice that we wouldn’t be able to bring it forth just in our spare time. So, after some thinking, I decided to completly concentrate on the project. Pulling some strings I managed to get about half a year of time, that I will now invest in working on Glou. Voila, the winter of code .
From now on I’ll post a weekly status report here every monday to keep interested people updated. And now, despite it is tuesday, let’s just jump right into it:
Week 1 – Review
As mentioned, the current focus of development is on libxoup. Since I didn’t work on libxoup for about two months, I used the first days of last week to get a feeling for the code again. There were also some patches which still waited to be applied. After that XoupEvent and XoupObject got a little cleanup and complete documentation. XoupIo was added (and fully documented) which is now responsible for IO activity and IO event handling. Finally XoupConnection and XoupServer (the nice socket wrappers) were completed.
This week the major steps towards the first release of libxoup will be taken, and if we are lucky we will see the release by the end of the week. Also a roadmap will be published describing the timeline for the first milestone of the Glou Project.
Concluding I’d just like to say that I’m looking forward to the time I’ll spend working on Glou. Who knows, maybe by the end of the winter we’ll see the first games supporting it?
Thank you for reading!
PS: If you like the idea of Glou and are interested in our project, why don’t you subscribe to our mailinglist? Great!
 The name Glou stands for Game LOUnge
 Do you know the Google Summer of Code?