Difference between revisions of "User:SankaD"

From The Battle for Wesnoth Wiki
(Created page with ' Short description: The AI will decide the best movements considering the resources available, enemy positions and their types, enemy distribution and etc... The generated moveme…')
 
Line 1: Line 1:
 
 
Short description: The AI will decide the best movements considering the resources available, enemy positions and their types, enemy distribution and etc... The generated movements will be decided on the values of the each troop. As an example, a shaman will be more important if there are more troops with low health, and Archers if there are troops with health. So the AI will determine which actions to take depending on a list of variables in the game environment
 
Short description: The AI will decide the best movements considering the resources available, enemy positions and their types, enemy distribution and etc... The generated movements will be decided on the values of the each troop. As an example, a shaman will be more important if there are more troops with low health, and Archers if there are troops with health. So the AI will determine which actions to take depending on a list of variables in the game environment
  
Line 60: Line 59:
 
I'm not already involved with any Open source development projects.
 
I'm not already involved with any Open source development projects.
  
2.5) Gaming experience - Are you a gamer?
+
==2.5) Gaming experience - Are you a gamer?==
  
 
  Yes.
 
  Yes.
  
2.5.1) What type of gamer are you?
+
===2.5.1) What type of gamer are you?===
  
 
  I used to be a heavy gamer. But with reason workload, gaming has been reduced somewhat.
 
  I used to be a heavy gamer. But with reason workload, gaming has been reduced somewhat.
  
2.5.2) What type of games?  
+
===2.5.2) What type of games? ===
  
 
  Skyrim (+Oblivion and Morrowind) , Age of Empires, Civilization 5, Crysis 2, Arkham City, Portal 2.
 
  Skyrim (+Oblivion and Morrowind) , Age of Empires, Civilization 5, Crysis 2, Arkham City, Portal 2.
  
2.5.3) What type of opponents do you prefer?  
+
===2.5.3) What type of opponents do you prefer? ===
  
 
  Intelligent and challenging ones.
 
  Intelligent and challenging ones.
  
2.5.4) Are you more interested in story or gameplay?
+
===2.5.4) Are you more interested in story or gameplay?===
  
 
  Somewhat both actually. I am more interested in the experience I can get from it. I think the story and the gameplay both should be upto the quality.
 
  Somewhat both actually. I am more interested in the experience I can get from it. I think the story and the gameplay both should be upto the quality.
  
2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.
+
===2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.===
  
 
I have been playing Wesnoth after seeing the  GSoC accepted organizations. I only played single player and very much captured by it's AI.
 
I have been playing Wesnoth after seeing the  GSoC accepted organizations. I only played single player and very much captured by it's AI.
Line 88: Line 87:
 
   
 
   
  
2.6) 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.
+
==2.6) 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.==
  
 
   
 
   
Line 94: Line 93:
 
   
 
   
  
3) Communication skills
+
=3) Communication skills=
  
 
   
 
   
  
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.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.==
  
 
  My level of written English is High.
 
  My level of written English is High.
  
3.2) What spoken languages are you fluent in?
+
==3.2) What spoken languages are you fluent in?==
  
 
  I'm fluent in Sinhala and English languages.
 
  I'm fluent in Sinhala and English languages.
Line 108: Line 107:
 
   
 
   
  
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) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.==
  
 
  I'm good at interacting with them. :)
 
  I'm good at interacting with them. :)
  
3.4) Do you give constructive advice?  
+
==3.4) Do you give constructive advice? ==
  
 
  Yes.
 
  Yes.
  
3.5) Do you receive advice well?  
+
==3.5) Do you receive advice well? ==
  
 
  Yes.
 
  Yes.
  
3.6) Are you good at sorting useful criticisms from useless ones?
+
==3.6) Are you good at sorting useful criticisms from useless ones?==
  
 
  Yes.
 
  Yes.
  
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.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==
  
 
  What I prefer is coding some prototype kind of thing to get the basic idea of the problem. And after a feedback I can gather the necessary information which I can use for the final product.
 
  What I prefer is coding some prototype kind of thing to get the basic idea of the problem. And after a feedback I can gather the necessary information which I can use for the final product.
Line 130: Line 129:
 
   
 
   
  
4) Project
+
=4) Project=
  
 
   
 
   
  
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?
+
==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?==
  
 
  I have selected on a project as I am very much interested in AI.It is "AI: Implement a 'total defense' strategy". I am going to focus on the defending AI. But I have a thought that the whole AI should be manipulated to get the optimal result.
 
  I have selected on a project as I am very much interested in AI.It is "AI: Implement a 'total defense' strategy". I am going to focus on the defending AI. But I have a thought that the whole AI should be manipulated to get the optimal result.
  
4.2) If you have invented your own project, please describe the project and the scope.
+
==4.2) If you have invented your own project, please describe the project and the scope.==
  
 
   
 
   
  
4.3) Why did you choose this project?
+
==4.3) Why did you choose this project?==
  
 
  I am very much interested in AI and Computer games. Doing something you like can be a great advantage because it would motivate me to do my best. :)
 
  I am very much interested in AI and Computer games. Doing something you like can be a great advantage because it would motivate me to do my best. :)
  
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".
+
==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".==
  
 
  As I am having my internship throughout the GSoC timeline, I will be available for work when ever I am free of work ( I have mentioned earlier).
 
  As I am having my internship throughout the GSoC timeline, I will be available for work when ever I am free of work ( I have mentioned earlier).
  
First I will be needing about 2 or 3 weeks to work on the above mentioned prototype so I could gather information. Then the initial work will be done to make a skeletal AI. I am expecting to implement the majority of the AI before the mid evaluations so I could experiment and fine tune it for the performance.
+
First I will be needing about 2 or 3 weeks to work on the above mentioned prototype so I could gather information. Then the initial work will be done to make a skeletal AI. I am expecting to implement the majority of the AI before the mid evaluations so I could experiment and fine tune it for the performance.
  
4.5) Include as much technical detail about your implementation as you can
+
==4.5) Include as much technical detail about your implementation as you can==
  
 
  I am considering of doing
 
  I am considering of doing
  
4.6) What do you expect to gain from this project?
+
==4.6) What do you expect to gain from this project?==
  
 
  I expect to learn or advance my knowledge on C++, LUA and Game AI. And also experience the Open Source community.
 
  I expect to learn or advance my knowledge on C++, LUA and Game AI. And also experience the Open Source community.
  
4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?  
+
==4.7) What would make you stay in the Wesnoth community after the conclusion of SOC? ==
  
 
  If I implement the Defence A.I. I will most probably be maintaining it as far as I can.
 
  If I implement the Defence A.I. I will most probably be maintaining it as far as I can.
Line 166: Line 165:
 
   
 
   
  
5) Practical considerations
+
=5) Practical considerations=
  
 
   
 
   
  
5.1) Are you familiar with any of the following tools or languages?
+
==5.1) Are you familiar with any of the following tools or languages?==
  
 
* Subversion (used for all commits)
 
* Subversion (used for all commits)
Line 200: Line 199:
 
  No.
 
  No.
  
5.2) Which tools do you normally use for development? Why do you use them?
+
==5.2) Which tools do you normally use for development? Why do you use them?==
  
 
Mostly I use Eclipse, as I am mostly working on Java projects. And if I am doing a C project also I am using eclipse as it is familiar for me. I am using subversion for version controlling.
 
Mostly I use Eclipse, as I am mostly working on Java projects. And if I am doing a C project also I am using eclipse as it is familiar for me. I am using subversion for version controlling.
  
5.3) What programming languages are you fluent in?
+
==5.3) What programming languages are you fluent in?==
  
 
Java, C#, VB, PHP, C ,Python, JavaScript
 
Java, C#, VB, PHP, C ,Python, JavaScript
 
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!
 
 
I would not mind talking on telephone.
 
 
094718065232
 
 
In general, students should be as verbose as possible in their answers and feel free to elaborate.
 

Revision as of 16:36, 1 April 2012

Short description: The AI will decide the best movements considering the resources available, enemy positions and their types, enemy distribution and etc... The generated movements will be decided on the values of the each troop. As an example, a shaman will be more important if there are more troops with low health, and Archers if there are troops with health. So the AI will determine which actions to take depending on a list of variables in the game environment


Contents

1) Basics

1.1) Write a small introduction to yourself.

My name is Sanka Darshana. I'm a 3rd year undergraduate at the department of Computer Science and Engineering in University of Moratuwa. I am very much interested in Gaming , algorithms and A.I. (Specially Game AI). Java is my preferred language, though I could program well in C, PHP, C#, VB. And I have some knowledge about Javascript and python languages.


1.2) State your preferred email address.

sankadarshana@gmail.com

1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?

sankad

1.4) Why do you want to participate in summer of code?

I thought this would be a great opportunity to prove and measure myself with the current technologies used throughout the world

1.5) What are you studying, subject, level and school?

I'm 3rd year undergraduate student at Department of Computer Science and Engineering in University of Moratuwa.

1.6) What country are you from, at what time are you most likely to be able to join IRC?

I'm from Sri Lanka. My preferred time slot for IRC is 1330H - 2030H GMT.

1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.

During the summer period I'm attending our internship program. So the day time of the week days will not be available for GSoC. But I could allocate more than 5 hours every week day and more than 8 hours every weekend if necessary.


2) Experience

2.1) What programs/software have you worked on before?

I have worked on a AI client for the classic Tank game. And I have participated in Google AI challenge 2011 fall (Rank 138). And I've done a timetabling application using Genetic Algorithms.

2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)

Yes. I have used 'svn' for the purpose. Most of the time this was for projects in the University.

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?

I haven't participated  in GSoC before. This is my first time.

2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.

I'm not already involved with any Open source development projects.

2.5) Gaming experience - Are you a gamer?

Yes.

2.5.1) What type of gamer are you?

I used to be a heavy gamer. But with reason workload, gaming has been reduced somewhat.

2.5.2) What type of games?

Skyrim (+Oblivion and Morrowind) , Age of Empires, Civilization 5, Crysis 2, Arkham City, Portal 2.

2.5.3) What type of opponents do you prefer?

Intelligent and challenging ones.

2.5.4) Are you more interested in story or gameplay?

Somewhat both actually. I am more interested in the experience I can get from it. I think the story and the gameplay both should be upto the quality.

2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.

I have been playing Wesnoth after seeing the GSoC accepted organizations. I only played single player and very much captured by it's AI.

We do not plan to favor Wesnoth players as such, but some particular projects require a good feeling for the game which is hard to get without having played intensively.


2.6) 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

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.

My level of written English is High.

3.2) What spoken languages are you fluent in?

I'm fluent in Sinhala and English languages.


3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.

I'm good at interacting with them. :)

3.4) Do you give constructive advice?

Yes.

3.5) Do you receive advice well?

Yes.

3.6) Are you good at sorting useful criticisms from useless ones?

Yes.

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

What I prefer is coding some prototype kind of thing to get the basic idea of the problem. And after a feedback I can gather the necessary information which I can use for the final product.


4) Project

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?

I have selected on a project as I am very much interested in AI.It is "AI: Implement a 'total defense' strategy". I am going to focus on the defending AI. But I have a thought that the whole AI should be manipulated to get the optimal result.

4.2) If you have invented your own project, please describe the project and the scope.

4.3) Why did you choose this project?

I am very much interested in AI and Computer games. Doing something you like can be a great advantage because it would motivate me to do my best. :)

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".

As I am having my internship throughout the GSoC timeline, I will be available for work when ever I am free of work ( I have mentioned earlier).
First I will be needing about 2 or 3 weeks to work on the above mentioned prototype so I could gather information. Then the initial work will be done to make a skeletal AI. I am expecting to implement the majority of the AI before the mid evaluations so I could experiment and fine tune it for the performance.

4.5) Include as much technical detail about your implementation as you can

I am considering of doing

4.6) What do you expect to gain from this project?

I expect to learn or advance my knowledge on C++, LUA and Game AI. And also experience the Open Source community.

4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?

If I implement the Defence A.I. I will most probably be maintaining it as far as I can.


5) Practical considerations

5.1) Are you familiar with any of the following tools or languages?

  • Subversion (used for all commits)

Yes.

  • C++ (language used for all the normal source code)

Somewhat. Not quite good.

  • STL, Boost, Sdl (C++ libraries used by Wesnoth)

No.

  • Python (optional, mainly used for tools)

Yes

  • build environments (eg cmake/scons)

Yes

  • WML (the wesnoth specific scenario language)

No.

  • Lua (used in combination with WML to create scenarios)
No.

5.2) Which tools do you normally use for development? Why do you use them?

Mostly I use Eclipse, as I am mostly working on Java projects. And if I am doing a C project also I am using eclipse as it is familiar for me. I am using subversion for version controlling.

5.3) What programming languages are you fluent in?

Java, C#, VB, PHP, C ,Python, JavaScript