Proposal: Open Game Lounge System / Community

Proposal: Open Game Lounge System / Community

Discuss the source code and development of Spring Engine in general from a technical point of view. Patches go here too.

Moderator: Moderators

Noya
Posts: 7
Joined: 08 Apr 2009, 13:04

Proposal: Open Game Lounge System / Community

Post by Noya »

Hello everyone!

Today I'd like to present you an idea that is centered around free and open
source games. It was born via a discussion on mailinglists and IRC-channels
between people from Freedesktop-Games, freegamedev.net and GGZ [1] in the course
of the last two weeks.

The vision is an open, cross-platform game lounge system, used to play online
with people from around the world, browsing through and easily joining
multiplayer games. Its core elements will be:

* a set of open standard protocols describing the communication between a
game-lounge-server, a game-server and a game-client
* an open API for games implementing these protocols
* a game-lounge-server including community features (user-database, statistics,
chatting, etc.)
* a game-browser

The main goal of the project is to make the creation of an open community for
games and gamers eventually possible.

Most of you will certainly know services like Gamespy, Steam, Windows-Live,
Xfire and possibly more. It seems like there currently is no free and open
alternative to them, and this project aims to change that. Maybe we can change
that together.

A more detailed overview of how the system could look like, what the goals and
what the benefits are is available at:
http://apps.sourceforge.net/mediawiki/g ... ctOverview

Just a word about what this project is not: it is not a replacement for your
current lobby-system. It may be if you want, but it will be created in a way
that it can be used in parallel to your own system.

I have sent this mail (or forum-post, wherever you read it) to the most
influential [2] open source games. You can see a complete list here:
http://apps.sourceforge.net/mediawiki/g ... e=Projects

Ideally this project will be a cooperation between the major open source games
out there. But that's for you to decide. I invite you, game developers and
people interested in open source games, to the Glou (= Game LOUnge) mailinglist,
a place to join the efforts and discuss how this project should look like. You
can join the mailinglist here:
http://lists.sourceforge.net/lists/listinfo/glou-devel

To hear from you would be great. As a starting point it would be interesting to
know...
* what features the lounge system definitely should have
* what features the current lobby system of your game has
* if you feel the need for an open gaming community
* if you would use the system in your game if it is done "the right way"
* and what you think about the idea in general

For now that's everything. Thank you all for your attention and patience :) .
Hopefully we'll see each other on the mailinglist to shape the future of this
project together.

Best regards
- Sven Pfaller (aka Noya)

[1] http://freedesktop.org/wiki/Games
http://wiki.freegamedev.net
http://www.ggzgamingzone.org
[2] This is obviously subjective. Feel free to contact projects that may be
missing and add them to the list.
User avatar
Beherith
Posts: 5145
Joined: 26 Oct 2007, 16:21

Re: Proposal: Open Game Lounge System / Community

Post by Beherith »

I kinda like this idea, but it seems like an awfully daunting task.

Edit:

Fixed link http://apps.sourceforge.net/mediawiki/g ... e=Projects

Spoiler alert: his post is a generic one
Last edited by Beherith on 08 Apr 2009, 19:06, edited 1 time in total.
imbaczek
Posts: 3629
Joined: 22 Aug 2006, 16:19

Re: Proposal: Open Game Lounge System / Community

Post by imbaczek »

First, there's a problem with your links - our forum is anal about url tags.

I like the idea, but am a bit afraid from the infrastructure perspective. I imagine this as a more or less heavily modified XMPP/Jabber (or IRC) system, with added protocol extensions for games. Such servers use non-negligible amount of resources if they're under any kind of load. I'm not saying it won't work, I'm just saying it'll need people with hardware and pipes. Spring is very fortunate to have one such person (actually it has several, lucky us), but not every project has such luck. This will not be a problem for quite some time; something to think about, though.

Now, why I like the idea: having a unified set of APIs for chat, channels, pms, friends, achievements(?) etc. would be a leap of epic proportions in open source gaming. Using XMPP gives the first half of the requirements for free (AFAIK), and hopefully it's extensible enough to support different games' needs. E.g. spring needs to send battle attributes like map name, mod name, player names, map and mod hashes, etc. An FPS game probably needs those, but it might want to provide more information for games which are in progress, since you can actually join them. Therefore, there's no point in trying to design a one size fits all data dictionary; what is needed is a generic attribute framework, something like IM presence reporting but greatly expanded.

This is starting to get a bit long, I have a lot of ideas but not much time to write them up (not to mention coding anything!) I'd strongly suggest looking at Jabber as a start point.
User avatar
SinbadEV
Posts: 6475
Joined: 02 May 2005, 03:56

Re: Proposal: Open Game Lounge System / Community

Post by SinbadEV »

Beherith wrote:I kinda like this idea, but it seems like an awfully daunting task.
I agree on both counts... I think AF Lobby was going to be something like this before it went on indefinite hiatus.

make sure your plugin-system is simple and ensure you actually have a server running for people to play on early enough to get some attention.

Also, feel free to make your think replace our server/client if you want, more choice is better, and if your system has powerful and dynamic enough plugin system to support all that's possible in the spring engine you're well on your way to making something useful.
el_matarife
Posts: 933
Joined: 27 Feb 2006, 02:04

Re: Proposal: Open Game Lounge System / Community

Post by el_matarife »

I wrote up a similar proposal a few months ago after bouncing ideas off Yokozar. Here's my last draft of said idea, maybe you'll get some useful ideas from it.

http://www.scribd.com/doc/14082643/DRAF ... Game-Lobby

(The darn attachment system won't let me link PDFs so I had to use Scribd, very irritating.)
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: Proposal: Open Game Lounge System / Community

Post by AF »

AFLobby/battlehub had Glest OTA and Spring engine support though the glest people didnt really use it, and OTA was in the testing builds before I put it on hold.

The infrastructure to do all this is already present in uber server. It just needs a lobby with the right stuff
reivanen
Posts: 180
Joined: 12 Feb 2008, 15:52

Re: Proposal: Open Game Lounge System / Community

Post by reivanen »

This idea sounds like pure WIN!

A lobby program that would include all open source games who want to be included, and their players in one environment would definitely help to increase the playerbase of them all. An IRC-style setup with channels and chat like the spring system currently is would be a great base to build on.
User avatar
smoth
Posts: 22309
Joined: 13 Jan 2005, 00:46

Re: Proposal: Open Game Lounge System / Community

Post by smoth »

I don't like putting all my eggs in one basket. Steam does that, the way I understand it this is a steam like system.
el_matarife
Posts: 933
Joined: 27 Feb 2006, 02:04

Re: Proposal: Open Game Lounge System / Community

Post by el_matarife »

My ultimate goal is to get the XMPP / Jabber folks to add game presence and messaging to their protocol so you can see what your friends are playing, no matter if they're on Steam, Xbox Live, the Playstation Network or any other network, or if you're on your cellphone, desktop, laptop running some oddball OS, who knows.

Once we have a standard for this type of game presence data, it will be just like email. One protocol, a million client implementations across every platform, and zero hassle to get the information you need wherever you want it.
YokoZar
Posts: 883
Joined: 15 Jul 2007, 22:02

Re: Proposal: Open Game Lounge System / Community

Post by YokoZar »

smoth wrote:I don't like putting all my eggs in one basket. Steam does that, the way I understand it this is a steam like system.
Don't think Steam, think email or IRC. The only realistic way for this to be workable is to have a series of federated servers all talking using specialized game extensions of the XMPP protocol.
Noya
Posts: 7
Joined: 08 Apr 2009, 13:04

Re: Proposal: Open Game Lounge System / Community

Post by Noya »

imbaczek wrote: ...
I like the idea, but am a bit afraid from the infrastructure perspective. I imagine this as a more or less heavily modified XMPP/Jabber (or IRC) system, with added protocol extensions for games. Such servers use non-negligible amount of resources if they're under any kind of load. I'm not saying it won't work, I'm just saying it'll need people with hardware and pipes. Spring is very fortunate to have one such person (actually it has several, lucky us), but not every project has such luck. This will not be a problem for quite some time; something to think about, though.
Yes, you're right, it'll be quite resource intensive, especially if many games and players should choose to use Glou. The thing we can do is to design the protocol and the server with scalability in mind. And with growing popularity there hopefully will be support from some people of the community that can help with hosting.
imbaczek wrote: Now, why I like the idea: having a unified set of APIs for chat, channels, pms, friends, achievements(?) etc. would be a leap of epic proportions in open source gaming. Using XMPP gives the first half of the requirements for free (AFAIK), and hopefully it's extensible enough to support different games' needs. E.g. spring needs to send battle attributes like map name, mod name, player names, map and mod hashes, etc. An FPS game probably needs those, but it might want to provide more information for games which are in progress, since you can actually join them. Therefore, there's no point in trying to design a one size fits all data dictionary; what is needed is a generic attribute framework, something like IM presence reporting but greatly expanded.
...
Indeed it would be a big step. We're currently discussing if we should use XMPP, so far it seems like a good idea. You're definitely right about the attributes, ideally games will be able to define costum attributes that fit them.

Thanks for your input. I can only suggest you (and anyone else interested) to join our mailinglist where we talk about XMPP at the moment. Maybe you'd have something to say :) .
Noya
Posts: 7
Joined: 08 Apr 2009, 13:04

Re: Proposal: Open Game Lounge System / Community

Post by Noya »

el_matarife wrote:I wrote up a similar proposal a few months ago after bouncing ideas off Yokozar. Here's my last draft of said idea, maybe you'll get some useful ideas from it.

http://www.scribd.com/doc/14082643/DRAF ... Game-Lobby

(The darn attachment system won't let me link PDFs so I had to use Scribd, very irritating.)
Nice proposal you've written there. I've read it and liked most of the ideas, and I've been certainly inspired from some of them.

May I ask you why you didn't start / continue to implement your proposed system?
Noya
Posts: 7
Joined: 08 Apr 2009, 13:04

Re: Proposal: Open Game Lounge System / Community

Post by Noya »

Beherith wrote:I kinda like this idea, but it seems like an awfully daunting task.
Edit:
Fixed link http://apps.sourceforge.net/mediawiki/g ... e=Projects
...
Thank you for fixing that link, somehow I didn't realize they were broken. Fail.

I think a system is best built step by step. The whole proposal may take years to be completly implemented, but some basic bits should be up and running relatively fast.
SinbadEV wrote: ...
I agree on both counts... I think AF Lobby was going to be something like this before it went on indefinite hiatus.

make sure your plugin-system is simple and ensure you actually have a server running for people to play on early enough to get some attention.

Also, feel free to make your think replace our server/client if you want, more choice is better, and if your system has powerful and dynamic enough plugin system to support all that's possible in the spring engine you're well on your way to making something useful.
AF wrote: AFLobby/battlehub had Glest OTA and Spring engine support though the glest people didnt really use it, and OTA was in the testing builds before I put it on hold.

The infrastructure to do all this is already present in uber server. It just needs a lobby with the right stuff
Even if there may be an (easy-to-use) plugin system for games not willing to use Glou, the primary goal is to develop standard protocols for gamelounge-gameserver-gameclient communication. So actually the API (wrapping the protocol) should be powerful enough for spring and yet simple to use :) .

Uberserver may have capabilities to support more games than spring, but imho that should not be the approach. Games should support the lounge, not the other way round ;) .
reivanen wrote:This idea sounds like pure WIN!

A lobby program that would include all open source games who want to be included, and their players in one environment would definitely help to increase the playerbase of them all. An IRC-style setup with channels and chat like the spring system currently is would be a great base to build on.
Fully agreed :) .
smoth wrote:I don't like putting all my eggs in one basket. Steam does that, the way I understand it this is a steam like system.
Sorry, I don't get it. What is the concrete problem here? ;)
el_matarife wrote:My ultimate goal is to get the XMPP / Jabber folks to add game presence and messaging to their protocol so you can see what your friends are playing, no matter if they're on Steam, Xbox Live, the Playstation Network or any other network, or if you're on your cellphone, desktop, laptop running some oddball OS, who knows.

Once we have a standard for this type of game presence data, it will be just like email. One protocol, a million client implementations across every platform, and zero hassle to get the information you need wherever you want it.
Sure, such a standard would be great. Someone pointed me to XEP-0196, maybe this is also interesting for you: http://xmpp.org/extensions/xep-0196.html
YokoZar wrote:
smoth wrote:I don't like putting all my eggs in one basket. Steam does that, the way I understand it this is a steam like system.
Don't think Steam, think email or IRC. The only realistic way for this to be workable is to have a series of federated servers all talking using specialized game extensions of the XMPP protocol.
For chat, messaging, game-presence etc. a distributed system is really optimal. It's getting a bit harder for highscores, ranks and match-making. So I would say, think email AND steam (okay not necessaraly steam, but you know what I mean... :p ). We'll further address the problems of a distributed system and how to fix them on our mailinglist.

Okay everyone, thank you very much for your input. Sorry for not hearing from me for so long, but I've received so many messages in so many different mailinglists / forums that it is kind of hard to keep up ;) .

Best regards
- Sven
el_matarife
Posts: 933
Joined: 27 Feb 2006, 02:04

Re: Proposal: Open Game Lounge System / Community

Post by el_matarife »

Noya wrote:Nice proposal you've written there. I've read it and liked most of the ideas, and I've been certainly inspired from some of them.

May I ask you why you didn't start / continue to implement your proposed system?
It basically boils down to laziness, lack of coding skill on my part, and the various other projects I am always in the middle of. I didn't want to just write a spec and randomly IM people saying "Be my personal code slave" and I didn't exactly have a roadmap for getting started.
Noya wrote:For chat, messaging, game-presence etc. a distributed system is really optimal. It's getting a bit harder for highscores, ranks and match-making. So I would say, think email AND steam (okay not necessaraly steam, but you know what I mean... :p ). We'll further address the problems of a distributed system and how to fix them on our mailinglist.
I agree, splitting the system into pieces is really the only viable option. The other problem is that a ranking, high scores, and achievements system is going to be ridiculously easy to "game" with an open protocol. If anyone can setup a server, and the server code is freely available, "bad actors" like myG0t or other griefer groups will setup servers in the federation reporting insane statistics. I'm not necessarily sure you should even bother building such a system if it won't be very useful.
YokoZar
Posts: 883
Joined: 15 Jul 2007, 22:02

Re: Proposal: Open Game Lounge System / Community

Post by YokoZar »

el_matarife wrote:I agree, splitting the system into pieces is really the only viable option. The other problem is that a ranking, high scores, and achievements system is going to be ridiculously easy to "game" with an open protocol. If anyone can setup a server, and the server code is freely available, "bad actors" like myG0t or other griefer groups will setup servers in the federation reporting insane statistics. I'm not necessarily sure you should even bother building such a system if it won't be very useful.
This is solvable in much the same way that code integrity is - by using digital signatures and recognizing certain providers as authoritative about things (like high scores).
el_matarife
Posts: 933
Joined: 27 Feb 2006, 02:04

Re: Proposal: Open Game Lounge System / Community

Post by el_matarife »

I really encourage everyone here to get in our IRC channel, #Glou on Sourceforge. Also, we're making a lot of progress on the Wiki https://apps.sourceforge.net/mediawiki/ ... evelopment

I think it would be great if the Spring project would agree to the "Showcase" project as the first one to deploy the protocol.
imbaczek
Posts: 3629
Joined: 22 Aug 2006, 16:19

Re: Proposal: Open Game Lounge System / Community

Post by imbaczek »

spring is pretty much protocol-agnostic; we only need the host to get the script to clients. how it's done is not the engine's concern. it'd be great to see a spring glou/concordance lobby infrastructure, but it can be done as a proof of concept in parallel to what we have now.
User avatar
SerjnDestroy
Posts: 38
Joined: 08 Nov 2008, 22:40

Re: Proposal: Open Game Lounge System / Community

Post by SerjnDestroy »

Nice, I had a similar idea a while back.. Here's a summary of my ideas and a few logs of discussion on freegamedev
http://p2posgamehosting.tiddlyspot.com/index.html

-TheAncientGoat
el_matarife
Posts: 933
Joined: 27 Feb 2006, 02:04

Re: Proposal: Open Game Lounge System / Community

Post by el_matarife »

SerjnDestroy wrote:Nice, I had a similar idea a while back.. Here's a summary of my ideas and a few logs of discussion on freegamedev
http://p2posgamehosting.tiddlyspot.com/index.html

-TheAncientGoat

I'll add this to the Glou wiki soon under the http://apps.sourceforge.net/mediawiki/g ... s_projects section if that's okay with you. I suggest you start hanging out in our IRC channel and join the mailing list.
User avatar
SerjnDestroy
Posts: 38
Joined: 08 Nov 2008, 22:40

Re: Proposal: Open Game Lounge System / Community

Post by SerjnDestroy »

I'd be glad if you did :) .. Popped on the irc channel yesterday night, didn't seem like anyone was awake.

I'm not really a fan of mailing lists, but I'll try it out in this case
Post Reply

Return to “Engine”