Difference between revisions of "SummerOfCodeProposal GuilhermeSouza"
Line 4: | Line 4: | ||
=Description= | =Description= | ||
<h4>Guilherme Souza - Implement persistent storage of gameworld data between semi-related scenarios</h4> | <h4>Guilherme Souza - Implement persistent storage of gameworld data between semi-related scenarios</h4> | ||
− | I want to implement the persistent gameworld idea. If I got accepted, I would discuss with the community and the developers about the best way to do this, searching for a solution that would be easy for the campaigns and maps developers to use. | + | I want to implement the persistent gameworld idea. If I got accepted, I would discuss with the community and the developers about the best way to do this, searching for a solution that would be easy for the campaigns and maps developers to use. The basic idea is to improve WML so developers can store and read variables for maps and campaigns, using them to create an different scenario each time the map/campaign is played. |
=IRC= | =IRC= | ||
schumi | schumi | ||
Line 56: | Line 56: | ||
<h4>What type of games?</h4> | <h4>What type of games?</h4> | ||
− | I like more strategy games (Warcraft, Starcraft, Wesnoth :) ), RPG (Final Fantasy) and the classics (Sonic, Mario, Zelda,etc) | + | I like more strategy games (Warcraft, Starcraft, Wesnoth :) ), RPG (Final Fantasy,Chrono Trriger) and the classics (Sonic, Mario, Zelda,etc) |
<h4>What type of opponents do you prefer?</h4> | <h4>What type of opponents do you prefer?</h4> |
Revision as of 19:05, 7 April 2010
This page is related to Summer of Code 2010 |
See the list of Summer of Code 2010 Ideas |
This is a Summer of Code 2010 student page |
Contents
- 1 Description
- 2 IRC
- 3 Questionnaire
- 3.1 Basics
- 3.1.1 Write a small introduction to yourself.
- 3.1.2 State your preferred email address.
- 3.1.3 If you have chosen a nick for IRC and Wesnoth forums, what is it?
- 3.1.4 Why do you want to participate in summer of code?
- 3.1.5 What are you studying, subject, level and school?
- 3.1.6 What country are you from, at what time are you most likely to be able to join IRC?
- 3.1.7 Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.
- 3.2 Experience
- 3.2.1 What programs/software have you worked on before?
- 3.2.2 Have you developed software in a team environment before? (As opposed to hacking on something on your own)
- 3.2.3 Have you participated to the Google Summer of Code before? As a mentor or a student? In what project? Were you successful? If not, why?
- 3.2.4 Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.
- 3.2.5 Gaming experience - Are you a gamer?
- 3.2.6 What type of gamer are you?
- 3.2.7 What type of games?
- 3.2.8 What type of opponents do you prefer?
- 3.2.9 Are you more interested in story or gameplay?
- 3.2.10 Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.
- 3.2.11 If you have contributed any patches to Wesnoth, please list them below. You can also list patches that have been submitted but not committed yet and patches that have not been specifically written for GSoC. If you have gained commit access to our SVN (during the evaluation period or earlier) please state so.
- 3.3 3) Communication skills
- 3.3.1 Though most of our developers are not native English speakers, English is the project's working language. Describe your fluency level in written English.
- 3.3.2 What spoken languages are you fluent in?
- 3.3.3 Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.
- 3.3.4 Do you give constructive advice?
- 3.3.5 Do you receive advice well?
- 3.3.6 Are you good at sorting useful criticisms from useless ones?
- 3.3.7 How autonomous are you when developing ? Would you rather discuss intensively changes and not start coding until you know what you want to do or would you rather code a proof of concept to "see how it turn out", taking the risk of having it thrown away if it doesn't match what the project want
- 3.4 Project
- 3.4.1 Did you select a project from our list? If that is the case, what project did you select? What do you want to especially concentrate on?
- 3.4.2 If you have invented your own project, please describe the project and the scope.
- 3.4.3 Why did you choose this project?
- 3.4.4 Include an estimated timeline for your work on the project. Don't forget to mention special things like "I booked holidays between A and B" and "I got an exam at ABC and won't be doing much then".
- 3.4.5 Include as much technical detail about your implementation as you can
- 3.4.6 What do you expect to gain from this project?
- 3.4.7 What would make you stay in the Wesnoth community after the conclusion of SOC?
- 3.5 Practical considerations
- 3.5.1 Are you familiar with any of the following tools or languages?
- 3.5.2 Which tools do you normally use for development? Why do you use them?
- 3.5.3 What programming languages are you fluent in?
- 3.5.4 Would you mind talking with your mentor on telephone / internet phone? We would like to have a backup way for communications for the case that somehow emails and IRC do fail. If you are willing to do so, please do list a phone number (including international code) so that we are able to contact you. You should probably *only* add this number in the application for you submit to google since the info in the wiki is available in public. We will *not* make any use of your number unless some case of "there is no way to contact you" does arise!
- 3.1 Basics
Description
I want to implement the persistent gameworld idea. If I got accepted, I would discuss with the community and the developers about the best way to do this, searching for a solution that would be easy for the campaigns and maps developers to use. The basic idea is to improve WML so developers can store and read variables for maps and campaigns, using them to create an different scenario each time the map/campaign is played.
IRC
schumi
Questionnaire
Basics
Write a small introduction to yourself.
Hello, my name is Guilherme Souza. I'm an 20 years old undergrad in Computer Engineering from Brazil. I like to participate in academics competitions (mainly mathematics and informatics) and want to improve my skills in programming.
State your preferred email address.
guirns@gmail.com
If you have chosen a nick for IRC and Wesnoth forums, what is it?
- Wesnoth forums: schumi
- gna.org: schumi
- irc: schumi
Why do you want to participate in summer of code?
Because it is an great opportunity of getting programming experience and helping open-source projects. At the same time!
What are you studying, subject, level and school?
I'm an undergrad in Computer Engineering at Instituto Tecnológico de Aeronáutica.I have just started my fourth year.
What country are you from, at what time are you most likely to be able to join IRC?
I'm from Brazil(UTC-3).So between 16hUTC - 04hUTC I can join IRC, though some days I have classes after the lunch. In these days I can join between 23hUTC - 04hUTC.
Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.
At the end of July, I'm going to IMC (http://www.imc-math.org/), so I can't work much on these days.
Experience
What programs/software have you worked on before?
I've worked in some programs for university projects.The most important are:
- A system for library administration
- Some programs that use LED's and cameras for better interaction with the computer (http://www.youtube.com/watch?v=XlE3Rg9EQ3Q).
Also I like to participate in programming competitions, like TopCoder, Google CodeJam and ACM-ICPC(going to the last world finals)
Have you developed software in a team environment before? (As opposed to hacking on something on your own)
Except for the library program, where the whole class was a team(approx. 30 students), only in small teams (3-6 persons)
Have you participated to the Google Summer of Code before? As a mentor or a student? In what project? Were you successful? If not, why?
No, I haven't.
Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.
No, but I plan to.
Gaming experience - Are you a gamer?
Yes, I really like to play games :).
What type of gamer are you?
I like to play the games until I finish them. But I don't care much to achieve things like 100% completion.
What type of games?
I like more strategy games (Warcraft, Starcraft, Wesnoth :) ), RPG (Final Fantasy,Chrono Trriger) and the classics (Sonic, Mario, Zelda,etc)
What type of opponents do you prefer?
The good ones.
Are you more interested in story or gameplay?
I prefer gameplay over history. But the best games normally have both.
Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.
Yes, I have played Wesnoth before, since the 1.4 version. I have finished all the mainline campaigns, and only played multiplayer with friends.
If you have contributed any patches to Wesnoth, please list them below. You can also list patches that have been submitted but not committed yet and patches that have not been specifically written for GSoC. If you have gained commit access to our SVN (during the evaluation period or earlier) please state so.
3) Communication skills
Though most of our developers are not native English speakers, English is the project's working language. Describe your fluency level in written English.
I can read fluently, but my writing isn't very good. Probably I'm doing some grammar errors in this wiki.
What spoken languages are you fluent in?
Portuguese and English.
Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.
Yes, I think so.
Do you give constructive advice?
I try to make only constructive advices.
Do you receive advice well?
Yes, I think so.
Are you good at sorting useful criticisms from useless ones?
Yes.
How autonomous are you when developing ? Would you rather discuss intensively changes and not start coding until you know what you want to do or would you rather code a proof of concept to "see how it turn out", taking the risk of having it thrown away if it doesn't match what the project want
I think it is good to code just a little to get a better knowledge of the program, but it's better to discuss before making huge changes.
Project
Did you select a project from our list? If that is the case, what project did you select? What do you want to especially concentrate on?
I selected the persistent gameworld project form the ideas list. I would concentrate first in modifications for single player, and then in multiplayer.
If you have invented your own project, please describe the project and the scope.
Why did you choose this project?
Because it looks like a great addition to Wesnoth, and something I think I can do.
Include an estimated timeline for your work on the project. Don't forget to mention special things like "I booked holidays between A and B" and "I got an exam at ABC and won't be doing much then".
My expected timeline is:
- 9 April - 24 May
Study the code, implement some ideas and interact with the community for ideas and suggestions.
- 24 May - 10 June
Implement the single player part.
- 10 June - 14 June
Test the solution with the map developers, doing the necessary changes. Get more ideas for the multiplayer.
- 14 June - 19 July
Implement the multiplayer part.
- 20 July - 27 July
Test the solution with the map developers, doing the necessary changes. Get more ideas for the game master mode.
- 27 July - 16 April.
Implement the game master mode and test it.
As I said before, at the end of July I'm traveling IMC (http://www.imc-math.org/), so I can't work much on these days.
If I finish the project before the time, I would try to find a way to permit many users having different persistent data in the same computer. Another idea is to create an creating an easy way to permit the users manage their data (deleting it, copying to other computer, etc).
Include as much technical detail about your implementation as you can
What do you expect to gain from this project?
Experience with a big team and big projects.
What would make you stay in the Wesnoth community after the conclusion of SOC?
The community and the project. If I like then (and probably will) I would continue helping Wesnoth.
Practical considerations
Are you familiar with any of the following tools or languages?
* Subversion (used for all commits)
I've used it for some projects in the University
* C++ (language used for all the normal source code)
Yes, it s the language I know most about.
* STL, Boost, Sdl (C++ libraries used by Wesnoth)
STL and Sdl.
* Python (optional, mainly used for tools)
I've some basic knowledge.
* build environments (eg cmake/autotools/scons)
The only experience I have with those is compiling wesnoth :)
* WML (the wesnoth specific scenario language)
I have only take a look in some WML files.
* Lua (used in combination with WML to create scenarios)
No experience in LUA.
Which tools do you normally use for development? Why do you use them?
- C/C++: On windows I use Code::Blocks, in linux I use Emacs for small programs and Code::Blocks for bigger ones.
- Python: Emacs
- Java: Eclipse/NetBeans
What programming languages are you fluent in?
C,C++,Java(not much) .
Would you mind talking with your mentor on telephone / internet phone? We would like to have a backup way for communications for the case that somehow emails and IRC do fail. If you are willing to do so, please do list a phone number (including international code) so that we are able to contact you. You should probably *only* add this number in the application for you submit to google since the info in the wiki is available in public. We will *not* make any use of your number unless some case of "there is no way to contact you" does arise!
I will provide my phone number in my SOC application.