Difference between revisions of "SummerOfCodeIdeas"

From The Battle for Wesnoth Wiki
Line 52: Line 52:
  
 
[[SoC_Ideas_Map_Editor]] - Full version of the idea, with detailed information
 
[[SoC_Ideas_Map_Editor]] - Full version of the idea, with detailed information
 +
 +
 +
=== Other possible ideas to be fleshed out ===
 +
A MapGenerator rewrite - better scalable for outdoor maps, plus the possibility to define areas (similar to the caverns in the cave generator) etc.
  
 
=== Make your own ideas ===
 
=== 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.
 
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.
 
=== Other ideas to be fleshed out ===
 
* A MapGenerator rewrite - better scalable for outdoor maps, plus the possibility to define areas (similar to the caverns in the cave generator) etc.
 
  
 
== Information about our Project ==
 
== Information about our Project ==
Line 63: Line 64:
  
 
== People to bug on IRC ==
 
== People to bug on IRC ==
Everybody feel free to edit/correct his entry!
+
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:
  
=== boucman ===
+
[[SoC_People_to_bug_on_IRC]]
As our "patch monkey" he accustomed to critiquing patches of every kind. Beside this, he knows many areas of the game due to working on applying patches. He is particularly used to answering question from new coders, and doesn't mind explaining trivial stuff. He was the one who started the "two patches, you're in" policy and the ReferenceWML part of the project.
 
  
=== Dave alias Sirp ===
+
== GSoC Student Applicant Ideas ==  
Sirp started Wesnoth and is our lead developer. He is currently our C++ expert and is also the one that is working on the new Formula AI. Any questions regarding the formula AI should be directed to him.
 
 
 
=== Elias Pscherning (elias) ===
 
He wrote the original version of campgen and as such will know a lot about what is needed to to make such an editor work correctly. The work on a scenario editor might be based upon campgen and as such his knowledge will be really helpful.
 
 
 
=== Eric S. Raymond (ESR) ===
 
ESR is our project toolsmith; he has written several tools that semi-automate various aspects of WML maintenance.  While most of our developers/designers concentrate on either the C++ core or WML but not both, he has a balanced understanding of both levels and may be helpful in helping students develop a grasp of the overall architecture.  Finally, he did the last overhaul of the Wesnoth UI and understands UI design principles; he is well-equipped to guide students working in that area.
 
 
 
=== Karol Nowak (grzywacz) ===
 
Last year he participated at GSoC as a student, so he will understand the situation of GSoC students. Beside this he is our top expert on embedded devices, and is actively working on the gp2x support.
 
 
 
=== Mordante ===
 
Many of the possible projects involve the code for which he is an area expert. Also, many of the possible projects currently listed on the ideas page require GUI parts to work. Given that Mordante wants to tackle a rewrite of large parts of this, he will be our expert there as well as already being our area expert for the terrain engine.
 
 
 
=== Nils Kneuper (Ivanovic) ===
 
He is doing nothing special, he just does some "administrative work" like packaging fresh tarballs when it is time for them and works on setting up any kind of deadlines and timetables related to releasing. He has administrative powers in most areas, no matter if website, forum or IRC. Beside this he uploads translation updates, tries to communicate with the translation teams when it is required and translates a little bit himself every now and then. But in general he is not a real expert in anything, just has a look at things that come up and redirects people to the correct contacts.
 
 
 
=== Noy ===
 
Noy is an oddity among developers; he's got no coding skills whatsoever and possesses a limited understanding of computers, which is illustrated by his difficulty operating a Mac. Instead, Noy makes his contribution in gameplay and multiplayer design, drawing upon his background in social sciences research, military strategy and playing games online, to understand the effects of development on the playing community behavior. Along with Soliton, Noy is a useful conduit to discuss any issues in this area; just don't ask him about revising the level of randomness in the game.
 
 
 
=== Noyga ===
 
Another versatile developer, on the C++ side he doesn't concentrate on a particular area, did some tweaks to improve translations in some languages (like enabling the female forms for names in various place) but know quite well the C++ side of units, abilities and WML. On the WML side he's an expert.
 
 
 
=== Sapient ===
 
This developer started working on the GUI and widgets, but recently he focused more on improving the internal mechanics of the WML engine such as variable look-ups and filtering. Sapient is not very active anymore but he does come one IRC in the evenings (U.S.A.). He has touched-up many areas of the code in small ways over time, thus he has a good general knowledge of the C++ code and also has worked a little on some python maintenance scripts. He keeps an eye on the quality of incoming C++... especially if you plan on making any changes to GUI or WML, Sapient will be reviewing it closely and with a critical eye.
 
 
 
=== Shadow Master/ShikadiLord ===
 
He joined the development team very recently, but has enough knowledge to help newcomers with trivial questions about the code and/or the C++ language. His primary focuses are the various WML handlers, such as game events code. His knowledge of the WML language itself is also enough to answer most questions and solve most problems, but only if they are not related to multiplayer games. He also has some basic knowledge of the autotools machinery we use to configure Wesnoth for foreign computers.
 
 
 
=== Soliton ===
 
He knows our MP server setup best. Beside this he has already done a lot of work on the MP server himself. So he probably has most knowledge about it and, being one of our MP-developers, might provide important help from the perspective of the MP player community and what is needed there.
 
 
 
=== YogiHH or Piotr Cychowski (cycholka) ===
 
Since they are the two developers who know most about building under Windows, they will probably be really helpful. Either if the student comes from the Windows side, or to help test resulting work to make sure that it does work on Windows and, for the case that it does not, to show them where problems are.
 
  
=== zookeeper or Mythological or Rhuvaen ===
+
Every student interested to work on Wesnoth as part of Summer of Code should create a page of his own where several things should be listed. Here is a short list of what should be mentioned on the list (the more info for us, the better...):
As our leading WML experts those are to be contacted when it comes to anything related WML problems since they know this stuff best. They do maintain most of the campaigns and improve them whenever they have a good idea for changes.
 
  
== GSoC Student Applicant Ideas ==
+
* Who are you? Please list your IRC and forum nickname in here and describe yourself so that we get you to know.
 +
* What do you want to work on? Please flesh out your personal ideas, so that we get to know what you plan to work on.
 +
* If you already submitted patches, please list those so that we have a reference.
  
 
=== [[FormulaAIandDynamicScripting]] (barbarianhero) ===
 
=== [[FormulaAIandDynamicScripting]] (barbarianhero) ===

Revision as of 14:56, 18 March 2008

This is a compilation of ideas from ML. Needs to be refined (more detailed description, deliverables, workload estimation?):

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

  • Create an account on gna.org
  • Create an account on the wesnoth forum
  • 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 learnt to know during the selection process
  • Contact one of our SummerOfCode people (Ivanovic, Sirp, Boucman, Mordante) to have your forum nick marked as a Summer of code student
  • Start a wiki page about your idea, add a link on this page
    • Fill the questionnaire on this page
    • Detail your idea as much as possible, look at other students pages, and please give milestones and studies you've done
  • 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.

List of Ideas for the Project (Suggestions from the wesnoth developers)

Here is only a short description of possible Ideas we have, each has a page of its own with a more detailed version on it.

Writing an AI based on the formula AI

Wesnoth has always had a simple C++ based AI. David (our lead developer) has been working on a simple language to write AI in Wesnoth: FormulaAI

The Wesnoth AI is used as an opponent in most campaigns, and as such is an important piece of code for the Wesnoth project. Unfortunately, because the skills required to understand and modify it are rather arcane, it is also one of the most neglected parts of the Wesnoth code. This is a place where a lot of research and useful work could be done.

SoC_Ideas_FormulaAI - Full version of the idea, with detailed information

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.

SoC_Ideas_Multiplayer_server - Full version of the idea, with detailed information

Scenario/Campaign editor

Currently, in order to create campaign or multiplayer scenarios, it is necessary to manually edit WML files - XML-like configuration files. The goal of this project would be to create a graphical editor to make the creative process easier.

SoC_Ideas_Scenario_and_Campaign_Editor - Full version of the idea, with detailed information

Addon server

Wesnoth has an addon server which offers users to upload user made content (UMC). This allows all other users of Wesnoth to easily download and install this content. The server was originally written for user-made campaigns but contains a lot more types of addons nowadays. Both the server side and the client side need to be improved.

SoC_Ideas_Addon_Server - Full version of the idea, with detailed information

Map editor

The map editor in Wesnoth serves two goals, making it easy to create a new map and helping the terrain artists to test their new terrains.

SoC_Ideas_Map_Editor - Full version of the idea, with detailed information


Other possible ideas to be fleshed out

A MapGenerator rewrite - better scalable for outdoor maps, plus the possibility to define areas (similar to the caverns in the cave generator) etc.

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.

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:

SoC_People_to_bug_on_IRC

GSoC Student Applicant Ideas

Every student interested to work on Wesnoth as part of Summer of Code should create a page of his own where several things should be listed. Here is a short list of what should be mentioned on the list (the more info for us, the better...):

  • Who are you? Please list your IRC and forum nickname in here and describe yourself so that we get you to know.
  • What do you want to work on? Please flesh out your personal ideas, so that we get to know what you plan to work on.
  • If you already submitted patches, please list those so that we have a reference.

FormulaAIandDynamicScripting (barbarianhero)

This project idea uses Formula AI and Dynamic Scripting to create a tunable and adaptive AI.

FormulaAIStancesSearchandEvaluation (andrewbwm)

This project implements Unit Behavioral Stances that are determinet by Search & Evaluation algorithms to determine a flexibile AI.