IPB Style© Fisana

Jump to content


Multiplayer lobby


  • Please log in to reply
57 replies to this topic

#1 Badmadblacksad

Badmadblacksad

  • WFG Programming Team

  • Discens
    (33 posts)

Posted 17 June 2012 - 07:34 PM

Hi all,
As some of you might remember, I was working on a multiplayer lobby many months ago.
I would like to discuss with you the features you would like it to have.
At the moment it still very basic, with only a list a created game and connected players.
New ideas could give me the motivation to start working on it again, so do not hesitate.
Thanks.
(I attached a patch to a new ticket)

http://trac.wildfire...com/ticket/1504
Martin F [ aka Badmadblacksad ]

Wildfire Games Programmer
Contact me: badmadblacksad@wildfiregames.com


Support Wildfire Games!

#2 Hazardoz

Hazardoz

  • Community Members
    Pip

  • Discens
    (11 posts)

Posted 17 June 2012 - 07:47 PM

you can add a friend list feature, and a country flag based on the person ip :P

Edited by Hazardoz, 17 June 2012 - 07:47 PM.


#3 Pureon

Pureon

  • 0 A.D. Art Team

  • Primus Pilus
    (3,220 posts)

Posted 17 June 2012 - 07:53 PM

Badmadblacksad does it work from within 0 A.D., via the main menu, or is it an independent file/program?
Pureon
0 A.D. Designer / Texturer / 3D Artist
Contact email:
pureon{@}wildfiregames.com

#4 zoot

zoot

  • Community Members
    PipPipPipPipPipPip

  • Primus Pilus
    (1,474 posts)

Posted 17 June 2012 - 08:11 PM

View PostBadmadblacksad, on 17 June 2012 - 07:34 PM, said:

New ideas could give me the motivation to start working on it again, so do not hesitate.
Integration with a yet-to-be-made standalone server for leaderboards and all that stuff :)

#5 feneur

feneur

  • 0 A.D. Project Leader

  • Cartographer of imaginary worlds
    (7,062 posts)

Posted 17 June 2012 - 08:42 PM

First, welcome back Martin (y) :)

Second, well, the main thing is that it should make it easier to connect to other players and improve the chances for people to have fun with the game. That's of course not news to you, I just want to start looking at the actual features from the right perspective :) Below is a list of the things I would like to see, listed roughly by importance.

Preferably it should work from within 0 A.D. Mostly because of the first reason mentioned above, to make it easier for people to connect to other players. Having to launch another application would make it a bit more complicated.

There should be a way to search for games based on certain criteria (they can be defined later, but the general concept should be there from the start). Things like map type (random/scenario, water/no water), victory conditions/match type (conquest, fortress, kind of the hill etc depending on what we can realistically implement), whether cheats are allowed or not, number of players.

A list of all existing MP matches, not sure whether in-progress ones should be displayed, but at least in some cases/for rejoining there might be reason to display them. The way I see it the main list should contain the name of the match (either automatic based on match type/map type or custom entered title), a few details about the match. Then you could click on it to see more details including the location of the host/already joined players (as that can be important), the above mentioned criteria, perhaps more technical things like ping etc.

You should be able to see/enter descriptions for your match. Say "I and a friend likes to play teamed games against multiple opponents" or whatever you want (though perhaps there should be some moderation to avoid people writing too bad things :P =) ).

It would probably be a good idea for the long run to have some kind of user profiles, both for the community aspect ("I've played x games against player y and won z times", "player y is always a helpful ally" etc etc) and to make it possible to store some stats about players for the competitiveness ("games won/lost" is always a curious one to have as that doesn't say much about the "quality" of the match, perhaps there's a way to do something more complicated and useful).

Linked to that you should be able to at least send messages to players who are currently online, perhaps have some kind of PM system for persistent messages as well, but that's lower priority imho.

User management, things like blocking users who are behaving badly, some kind of permissions system so you can set up other users as admins to help out with moderating, the ability to delete games if e.g. the description is bad (in the obscene, hateful, spam sense), etc.

As mentioned above a friend list would be nice, as well as the ability to block certain users.

Quote

Integration with a yet-to-be-made standalone server for leaderboards and all that stuff :)
As far as I understand that's part of this :) No reason to have a multiplayer lobby if it isn't connected to something (then you'd still have to search for games via IP or something), perhaps you're just thinking of the leaderbords etc? Either way I think it all should be connected. Not necessarily all implemented at once, but the development MP lobby part of the server/user side implementation should take other community aspects like the possibility to include a leaderbord into account :)

I would prefer if it was possible to do both the community part and the find a games part from within the game, and at least the former from a web interface as well. Not sure how easy it is to integrate a login system with both the game and a web server though. :unsure:


I'm sure you'll have a lot of things to think about after a while, my list is at least a fair amount of work I'm sure :) Development of the MP lobby server can continue a fair bit into Beta though as it's not gameplay/balance related. There should probably not be any major new features in the last couple of Beta releases though, and more or less bug fixes in the final ones. But still, I'd think we'll have at least 5-7 Beta releases before we're done :) (Maybe more, I'm thinking we might benefit from shorter/more focused release cycles in Beta, and thus more but smaller, but that will have to remain to be seen what works in practice :) )

Erik Johansson [ aka feneur ]

Wildfire Games
Contact me: feneur@wildfiregames.com



Support Wildfire Games!


#6 Hazardoz

Hazardoz

  • Community Members
    Pip

  • Discens
    (11 posts)

Posted 17 June 2012 - 08:49 PM

are we going to have a lobby for Alpha 11?

#7 feneur

feneur

  • 0 A.D. Project Leader

  • Cartographer of imaginary worlds
    (7,062 posts)

Posted 17 June 2012 - 08:59 PM

View PostHazardoz, on 17 June 2012 - 08:49 PM, said:

are we going to have a lobby for Alpha 11?
No. (Of course it's not entirely impossible to have some kind of basic lobby done already for Alpha 11 depending on how useable what Martin has created already is, but generally speaking it's not very likely. Mainly because it's a quite bit thing and will probably need quite some work before being truly useable :) )

Erik Johansson [ aka feneur ]

Wildfire Games
Contact me: feneur@wildfiregames.com



Support Wildfire Games!


#8 zoot

zoot

  • Community Members
    PipPipPipPipPipPip

  • Primus Pilus
    (1,474 posts)

Posted 17 June 2012 - 09:05 PM

I think leaderboards and that sort of thing is a somewhat different can of worms than just creating and joining games. The only clean way of doing it, that I can imagine, is to copy the existing functionality for executing a multiplayer game into a standalone or "dedicated" server application that can also track wins and losses.

#9 Hazardoz

Hazardoz

  • Community Members
    Pip

  • Discens
    (11 posts)

Posted 17 June 2012 - 09:10 PM

can you guys add a chat on this forum? maybe we can use a chat to talk to other people and organize multiplayer matchs :P

zoot, do you wanna play 1 vs 1 right now? D:

#10 zoot

zoot

  • Community Members
    PipPipPipPipPipPip

  • Primus Pilus
    (1,474 posts)

Posted 17 June 2012 - 09:14 PM

Nah, I'd just lose :P

#11 feneur

feneur

  • 0 A.D. Project Leader

  • Cartographer of imaginary worlds
    (7,062 posts)

Posted 17 June 2012 - 09:55 PM

View PostHazardoz, on 17 June 2012 - 09:10 PM, said:

can you guys add a chat on this forum? maybe we can use a chat to talk to other people and organize multiplayer matchs :P

zoot, do you wanna play 1 vs 1 right now? D:
There's already the IRC channel: #0ad on irc.QuakeNet.org (either use a separate application or just click through to the web chat: http://webchat.quake...g/?channels=0ad ). Maybe we should advertise it more though :)

Erik Johansson [ aka feneur ]

Wildfire Games
Contact me: feneur@wildfiregames.com



Support Wildfire Games!


#12 KlausWuestefeld

KlausWuestefeld

  • Community Newbie

  • Tiro
    (1 posts)

Posted 18 June 2012 - 08:14 PM

Hi, Congrats on a kickass project!

You guys are building the free AoE. I'm building the free "skype". It is called Sneer, the sovereign computing peer.

Does 0AD multiplayer mode solve firewall issues? Does it traverse NAT? Does it do UPnP? Does it need a server up somewhere? Does it authenticate users?

Sneer solves all networking issues so that apps no longer have to worry about any of that.

If you make the multiplayer support pluggable, I can make people play 0AD over Sneer. :)

Suppose 0AD listens on a TCP port and has a ridiculously simple protocol:
--> set id (bytes)
--> peer is online (id)
<-- send bytes to peer (id, bytes)
--> receive bytes from peer (id, bytes)

I can now write a Sneer app that plugs into 0AD and lets people play with their friends without network hassle. You can use the exact same underlying interface for your regular multiplayer support.

See you, Klaus.
PS: Will this forum notify me of replies via email? If not, please do: mail at klaus.pro

Edited by KlausWuestefeld, 18 June 2012 - 08:18 PM.


#13 Badmadblacksad

Badmadblacksad

  • WFG Programming Team

  • Discens
    (33 posts)

Posted 20 June 2012 - 12:00 AM

@Pureon: yes you can access the lobby in the game.
@Klaus: It would be great to be able to avoid the NAT/firewall issues. I m not familiar with upnp technologies at all, I will have to read things before attempting to answer something relevant...
Thanks for your ideas everyone.
Martin F [ aka Badmadblacksad ]

Wildfire Games Programmer
Contact me: badmadblacksad@wildfiregames.com


Support Wildfire Games!

#14 Sonarpulse

Sonarpulse

  • Community Members
    PipPip

  • Sesquiplicarius
    (161 posts)

Posted 20 June 2012 - 08:19 AM

Check out this: http://cncnet.org/ code is https://github.com/hifi/cncnet

I have personally used this framework a bunch, and I'm pretty sure it solves, or paves the way to solving most everything people want here. Furthermore, I believe it's pretty game/protocol-agnostic at the moment.
Posted ImagePosted ImagePosted Image

#15 gudo

gudo

  • Community Members
    PipPipPip

  • Duplicarius
    (228 posts)

Posted 22 June 2012 - 01:35 AM

One thing the client side of the lobby software should do IMO is link into the 0AD IRC chat. Connecting to the lobby would also then log you into an IRC client and automatically connect you to QuakeNet. You would then be able to browse game and chat (to set up matches, etc) If you just wanted to idle in the chat, then you could do it with a traditional IRC client and not have to have the game running 24/7.
Did you contribute to 0 AD?
Make sure you're in the credits!


AI Players
JuBot | RootBot | SplitBot | qBot | Marilyn | arBot

#16 Sonarpulse

Sonarpulse

  • Community Members
    PipPip

  • Sesquiplicarius
    (161 posts)

Posted 22 June 2012 - 11:57 PM

Yeah, both in-game and lobby chat could be done with IRC (if game is passworded, channel for chat has corresponding password and synchronous login). I think the cncnet thing I linked to has some sort of server implementation as in IRC module too.

For LAN play, is their any standard scheme for IRC without a server?
Posted ImagePosted ImagePosted Image

#17 Badmadblacksad

Badmadblacksad

  • WFG Programming Team

  • Discens
    (33 posts)

Posted 23 June 2012 - 12:30 AM

There will be no irc in the lobby but a xmpp (jabber) room.
Martin F [ aka Badmadblacksad ]

Wildfire Games Programmer
Contact me: badmadblacksad@wildfiregames.com


Support Wildfire Games!

#18 Sonarpulse

Sonarpulse

  • Community Members
    PipPip

  • Sesquiplicarius
    (161 posts)

Posted 24 June 2012 - 01:03 AM

can you attach the 0ad client to an existing xmpp account then?

Edited by Sonarpulse, 26 June 2012 - 01:01 AM.

Posted ImagePosted ImagePosted Image

#19 Badmadblacksad

Badmadblacksad

  • WFG Programming Team

  • Discens
    (33 posts)

Posted 25 June 2012 - 10:09 PM

Yes, that's technically possible but I don't know why we would like to do that.
Martin F [ aka Badmadblacksad ]

Wildfire Games Programmer
Contact me: badmadblacksad@wildfiregames.com


Support Wildfire Games!

#20 Sonarpulse

Sonarpulse

  • Community Members
    PipPip

  • Sesquiplicarius
    (161 posts)

Posted 26 June 2012 - 01:02 AM

I'll admit that I initially asked just out of curiosity, but a potential use would be to know for sure who you are playing. (password protection or even more secure with OTR chat)
Posted ImagePosted ImagePosted Image




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users