SoC Ideas Multiplayer server
Extending the Multiplayer server
Our multiplayer community is generally strong and healthy, but we believe its growth is limited by some problems in the interface of the multiplayer lobby.
The general idea of this project would be
- To study the current lobby,
- To develop ideas about how our multiplayer interface could evolve to allow it to scale to a much larger community
- And to implement as many of those changes as practical
Some ideas that we had (but that are in no way mandatory):
- Having a simple way to register and authenticate nicknames, similar to what IRC offers. The point is not to have cryptographically safe logins, but to have something simple that gets the job done
- Having a simple room system? Again, inspired by IRC
- Having some way to find the type of games you are interested in. filtering by:
- game type
- number of free slots/players
- any other criteria you might find interesting
Other ideas we are not yet convinced are good, but that are certainly worth studying (especially how the communities based around these concepts are different from ours)
- ranking players
- official tournaments
- titles for players
- game matching when players are ranked (poker, bridge...)
The scalability of the design (both in term of number of players, and in term of the possibility for players and developers to extend the concept) will be an important criterion.
Administration/moderation problems and techniques should also be studied.
Interaction with the Add-On server/forum should be explored.
Required knowledge and talent
- A fair amount of experience with C++ is required. Wesnoth uses some advanced C++ features and is heavily based on BOOST and SDL. We can train you in some of the libraries used, but learning all of them would be a big hurdle.
- Experience with multiplayer games, in order to have a good idea of what multiplayer lobbies of other game look like, and (more importantly) a good idea of the social behaviours of multiple MP communities, how teams are formed in games and things like that.
Milestones and deliverables
- A first milestone would be a presentation summarizing the different studies, and the proposed interface. preliminary informal stages would probably be desirable, to make sure the proposed idea is already a consensus within devs
- Study of other MP game-matching interfaces and functionalities
- Study of other MP communities
- Study of other MP moderation practices
- Study of the Wesnoth MP community, including needs, various opinions from different developers and players
- A second milestone would be the main code delivery. Code should be functional for it will be delivered in the next Wesnoth development release
Summer of Code Ideas - The root where all information regarding SoC is (or better should be) linked from.