SummerOfCodeIdeas
From Wesnoth
| This page is related to Summer of Code 2010 |
| See the list of Summer of Code 2010 Ideas |
I want to be one of your Google Summer of Code students, what should I do...
Here is a quick list of things to do to get you started
- MOST IMPORTANT Join the irc channel (#wesnoth-dev on irc.freenode.net) and introduce yourself. We will not give formal interviews, but we will clearly favor people we have learned to know during the selection process (basically communication via IRC is mandatory for our project! it is the main way of "every day communication" for Wesnoth. For the same reason, it's also a good idea to regularly read the IRC logs.).
- VERY IMPORTANT Start a wiki page about your idea:
- copy-paste the source of SOC_Template_of_Student_Page to a new page, picking a suitable name for it. Please include either your real name or your irc nickname as part of your page title. For example: SummerOfCodeProposal_Nickname Through the {{SoC2010Student}} template, your page will be included in the 'Summer of Code 2010 Student Page' category, and, your page will appear in the list of student pages at the end of this page.
- List your account names (gna.org, forum.wesnoth.org, irc nick) so that we can recognize you
- Fill the questionnaire.
- Detail your idea as much as possible, look at other students pages, and please give milestones and studies you've done
- Create an account on gna.org (required for committing later on)
- Create an account on the wesnoth forum, and tell an admin of the forum or leader of the group on the IRC channel to mark it as a GSoC Student account (admins/group leaders are: Boucman, Ivanovic, Mordante, shadowmaster, Sirp, Soliton, YogiHH)
- Though not mandatory, it is highly advisable to go to the EasyCoding and NotSoEasyCoding pages and implement one of these ideas (or any idea of similar scope) so we have an idea how you work. Be sure to use your gna account when submitting these patches so we know who it is coming from. You can also implement some features from our feature request database at gna. When you implement something, also list it on your own page with a reference to the patch. This should give you a good idea what the Wesnoth sourcecode is like and will provide a good start to getting used to our coding style, too.
- For working on Wesnoth you have to be able to compile trunk. To do so you should have a look at the page about svn and afterwards compile Wesnoth svn.
- Once you have everything done here and think your idea is okay, go to page at google to submit your application. You have to submit it before April 9th at 19:00 UTC (12:00 noon PDT) or you have no chance to get in!
List of Ideas for the Project (Suggestions from wesnoth developers)
| NOTE: this list of ideas is automatically generated from the 'description' section of pages in Summer of Code 2010 Idea category. DO NOT TRY TO EDIT THIS LIST BY HAND - IT WON'T WORK. INSTEAD, CREATE A NEW PAGE WITH THE {{SoC2010Idea}} template. |
Port Wesnoth input framework to a more flexible system
Since 2007, Wesnoth has been rewriting its GUI system with a more flexible system
allowing all user interface aspect to be specified through WML. One of the
changes has been to change the GUI input system. The input system still only
support keyboard and mouse. With the rise of the more powerful hand-held
devices(hand-held game consoles and phones) Wesnoth gets ported to these
devices as well. The scope of this SoC project is to add more different kind
of input devices like pads and touch screens.
See SoC Ideas Gui2 Input for more information.
Extend Wesnoth Lua AI Support
Lua AI support was recently added to wesnoth. Expose c++ AI support functions that Wesnoth has, to Lua.
See SoC Ideas Lua AI for more information.
Rewrite wesnoth network stack using boost::asio
Rewrite wesnoth network stack using boost::asio.
See SoC Ideas Network Stack Rewrite for more information.
New Alliance system
Wesnoth currently has a very simple alliance system, players are either allied, neutral, or enemies. The idea is to replace this with a system of privilege granting. Each player can grant privileges to other players but can't force other to grant the corresponding privilege. Thus it's only through diplomacy and trust that you can build an alliance.
See SoC Ideas New Alliance System for more information.
Implement persistent storage of gameworld data between semi-related scenarios
Allow WML authors to store/access persistent data 'in context' of a specific campaign/add-on/group of addons/ group of games. This will allow things like 'achievements' or 'massive multiplayer campaigns' to work.
See SoC Ideas Persistent Gameworld for more information.
Allow wesnoth to support spritesheets
Wesnoth units are made of thousands of small png files, each containing the image of the unit in a given stance. This has the advantage of (arguably) being easier for artists. However this has a huge cost in term of memory usage. The point of this SoC would be to allow wesnoth to support spritesheets : huge images containing a mosaic of all images and related tools/code support
See SoC Ideas SpriteSheets for more information.
Make your own ideas
If you have your own idea the best thing is to join IRC wesnoth-dev at irc.freenode.net and discuss the idea with the developers there. If the developers think your idea is interesting and like the feature you can start to turn it into a full proposal. Once done discuss it again on IRC so the developers can accept your idea.
Information about our Project
The information we provided google with about our project can be looked up at the site SoC Information for Google.
Also see the DeveloperResources link (from the Project page).
People to bug on IRC
We have prepared a list of people with their "area of competence". This is to give you an idea on which areas those people can be of help for you. Of course you should always just ask in the IRC chan, but those are the most likely ones to answer questions in the respective area. And here is the list:
Student pages
| NOTE: this list of student pages is automatically generated from the 'description' section of pages in Summer of Code 2010 Student Page category. DO NOT TRY TO EDIT THIS LIST BY HAND - IT WON'T WORK. INSTEAD, COPY-PASTE THE SOURCE OF SOC Template of Student Page TO A NEW PAGE. Please include either your real name or your irc nickname as part of your page title. Example of page title: SummerOfCodeProposal_Nickname |
TODO: Copy this page and write your proposal summary in it
TODO: Write a small (1-4 sentences) description of your proposal here.
See SOC Template of Student Page for more information.
Anil Verma - More thrill n more passion
I have an idea to propose in the current version of War of Wesnoth. It is that in the case of multiplayer games, apart from the various human users fighting against each other , there should be some teams(1 or 2) from the computer side, neutral to both the sides which interfere in the contest between the human players. These computer side teams will behave slightly different for each human team . So, if a computer team is a little more ferocious against a human team ,another computer team may be a little friendly to that team and this nature may vary even in that game from time to time. Also, it would be very interesting to see how the human teams may alliance with each other or even singly try to throw away the computer teams. I think such a modification will introduce a new wave of interest and thrill to the players. If you liked the idea or want some change in this regard , please do write me.
See SummerOfCodeProposal Anil Verma for more information.
Luca Moller - Make the c++ AI functions avaiable through the lua engine
I'm still studying this idea to write something here.
See SummerOfCodeProposal LucaMoller for more information.
Aranair - Summer of Code Proposal
gna.org : aranair
irc : aranair (will pop by real soon)
I am interested in a new implementation of the alliance system where I will introduce the list of parameters that was listed out in the original post in the list of ideas (with modification). My take to this is that they should not be simply set to true or false but rather with more intricate levels to increase the dynamics through simple means...
Discussed this in more details in my page.
See SummerofCode Aranair for more information.
Orfest - Rewriting network stack
gna.org : orfest
irc : orfest
I am really interested in rewriting network stack using boost::asio. This task will not only improve the current network stack implementation but will also bring new features such as proxy support, configurable timeout values for connections, connection multiplexing on the client.
Please see more details on my page.
See SummerofCode Orfest for more information.
