SoC Incredible Unify SP and MP 2014

From The Battle for Wesnoth Wiki

ATTENTION

This page is incomplete.


Description

I would like to Unify Single player and Multiplayer by improving code in multiplayer, play campaign, game controller's cpp files. I think it would be make game more batter by changing this files.

IRC

Incredible

Project

Incomplete.. If we can generate a structure like this then it would be more easier. a common file for any single player or a multiplayer game request.

for a singleplayer

singleplayer-> select a specific scenario-> select AI level-> call multiplayer.cpp with player ac AI(user selected(normal/hard/expert)) ->start game.

in scenario file we have a list of scenario. every scenario calls a map from list. after finishing (winning) that map function returns to scenario file and calls another map.

for a multiplayer

multiplayer-> select server or lan -> server -> give options to choose from online servers -> start game.
				   -> lan-> join lan server->start game.
           -> create server-> select a map -> option to choose from AI and player ->AI ->level of AI ->start game.
											    -> player-> start game. 

Do coding for Wesnoth related to unify Single player and Multiplayer.

Timeline

21 March - 25 April :Understanding code structure and start coding.
26 April to 3 May   :College Exam.
4 May to 10 May     :Going outside.
10 May to 18 August :Developing system to unify single player and multiplayer for Wesnoth.

Questions

1) Basics

1.1) Write a small introduction to yourself.

Hello, my name is Dakshal Shah. I would describe myself as a enthusiastic and curious person. I love to do programing to solve challenging problems. And my favourite area is gaming.

1.2) State your preferred email address.

dakshalshah@gmail.com

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

Incredible

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

I had never got experience of real life scenario. So, I would like to participate in summer of code for getting real life experience. And I also like to solve problems and bugs. So I think it is perfect place which satisfies my both requirement.

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

I am a 2nd yead student and doing my B-Tech from one of the well-known institutes of India DA-IICT in the field of Information and Communication Technology(ICT). I Studied subjects related to Data structure, Algorithm, System programming, Algebra, probability and Discrete Mathematics.

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

I am from India. I would be available on IRC between 2 -19 in UTC.

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

I don't have any other commitments.

2) Experience

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

Most of the programming I did was for university's assignments or my own small projects. Some of them:

   Making an efficient code for google AI(college level) for Planet-Wars.
   Single player(Vs Computer) and multipalyer tic-tac toe game.
   Efficient malloc code for dynamic memory allocation.
   

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

While we were developing game for tic tac toe in a group, I worked as a leader. It was a good experience for me.

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?

No, it is my first time to apply for GSoC.

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

No.

2.5) Gaming experience - Are you a gamer?

I am a casual Gamer.

2.5.1) What type of gamer are you?

Usually, when I play games I always try to find out bugs and problems in games. I always look for shortcuts or mistakes in game to finish game faster.

2.5.2) What type of games?

I prefer strategic games, which are simple in rules but have some level of complexity. I like to play Empire Earth, Wesnoth, Fifa mostly.

2.5.3) What type of opponents do you prefer?

I will mostly prefer a human opponent. Because it’s good sometimes for challenges. I will also prefer AI opponent if they are strong in logic

2.5.4) Are you more interested in story or gameplay?

It's hard to decide between both because a good game needs both story and gameplay. But I would give preference to story. Because if I likes story, I neglect gameplay at some level.

2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer. 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.

No, I started to play Wesnoth from feb-14. I played couple of games in different campaign mode. I also played some multiplayer game.

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 repository (during the evaluation period or earlier) please state so.

Up till now I couldn't get any thing but I will update this section as soon as I found something.

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.

I am good at basic English in writing and speaking.

3.2) What spoken languages are you fluent in?

English, Hindi and Gujarati.

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 play less online games so I have not good experience about that. but through LAN gaming in our college I think my experience got worse. I even tried to be polite they got anger very sooner.

3.4) Do you give constructive advice?

yes, I think whenever I give advice to anyone I try to give it in constructive way.

3.5) Do you receive advice well?

I think yes. because it helps me most of time.

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

It’s hard to tell but when criticisms were constructive then I think they are useful.

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

I like to remain autonomous when i developing. but I think I can talk when I needed help.

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 project name “Game Engine: Unify SP and MP” from the list. I especially concentrate on working with files which set up the levels and campaigns.

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

N/A.

4.3) Why did you choose this project?

I think I can do this part better than any other part. because I love to improve codes of others and remove bugs and solve their errors.

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".
It is in Timeline section.

4.5) Include as much technical detail about your implementation as you can.
It is in Project section.

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

I think I will get experience for working in open source community and a real life coding experience.

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

I think i will be stay in touch with Wesnoth community after the conclusion of SOC to improve it.

5) Practical considerations

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

Git (used for all commits)I am new to Git but I think I will do it well.
C++ (language used for all the normal source code)I learned that language in my college years and I think I have little bit idea of that.
STL, Boost, Sdl (C++ libraries used by Wesnoth)yes a little bit with STL.
Python (optional, mainly used for tools)no i have no idea about that. but if its needed then I can solve it.
build environments (eg cmake/scons)scons.
WML (the Wesnoth specific scenario language)no, I have no idea about that.
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?

I use Vim/Gedit and CMD for development.

5.3) What programming languages are you fluent in?

C,C++,Java - I learned that in my college.

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 don’t have any problem. and it is available in my info at GSoC page.


This page was last edited on 7 April 2014, at 11:34.