https://wiki.wesnoth.org/api.php?action=feedcontributions&user=Lipk&feedformat=atomThe Battle for Wesnoth Wiki - User contributions [en]2024-03-28T13:38:49ZUser contributionsMediaWiki 1.31.16https://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=55317SoC2014 lipkab SDL22014-07-06T12:53:28Z<p>Lipk: /* Questionnaire */</p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_SDL2]]<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
I propose to help with the SDL2 transition.<br />
<br />
I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
I'm a university student from Budapest, Hungary. I've been an OSS user since my Vista installation committed harakiri somewhen in mid-2009. Although I took a few courses in programming, I'm mostly an autodidact. Besides programming, I like origami, furry animals and pancakes.<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology). Well, in fact, I'm formally a Molecular Bionics student, however, in practice I take CS courses and next year I'll be able to officially switch majors.<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
SDL2 related commits:<br />
* Commits 821b009 to 37c7100: fix mouse wheel for SDL2.<br />
* Commit 7b6c125: sdl2 option for SCons.<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the greater challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
I usually listen to and consider any advice but I tend to be rather insistant on my own ideas.<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my contributions for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I wanted to work on this anyways, getting help and payment for it made it even more appealing.<br />
<br />
'''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".'''<br />
<br />
{| class="wikitable"<br />
|-<br />
!Week<br />
!Task<br />
!Notes<br />
!Status<br />
|-<br />
| 1<br />
| Working on ttexture<br />
| I'll have exams during this period<br />
| Done!<br />
|-<br />
| 2<br />
| Finish ttexture and add texture siblings for any function in sdl_utils that doesn't have an equivalent in ttexture<br />
| I'll have exams during this period<br />
| Done!<br />
|-<br />
| 3<br />
| Add texture loading to twindow (if it's not yet be there by then), start converting the image cache<br />
| No more exams! (I hope)<br />
| Done!<br />
|-<br />
| 4<br />
| Finish converting the image cache, and do a lot of testing<br />
| If both I and a spritesheet student get accepted, we might have some interference at this part<br />
| Done!<br />
|-<br />
| 5<br />
| Delay.<br />
|<br />
|<br />
|-<br />
| 6<br />
| Delay.<br />
|<br />
|<br />
|-<br />
| 7<br />
| Start working on the storyscreen. Plan the conversion (semantical changes might be necessary, see below), start implementation<br />
|<br />
| Done!<br />
|-<br />
| 8<br />
| Finish the storyscreen<br />
| Since this will be the first occasion to put ttexture into real use, I expect that these two weeks will include some bugfixing as well<br />
|<br />
|-<br />
| 9<br />
| Plan the conversion for display and game_display. Convert the minimap<br />
|<br />
|<br />
|-<br />
| 10<br />
| Change function calls in display and game display to use textures instead of surfaces, make it compile<br />
|<br />
|<br />
|-<br />
| 11<br />
| Fix any problems with dispay and game_display<br />
|<br />
|<br />
|-<br />
| 12<br />
| Write documentation for display & game_display<br />
|<br />
|<br />
|-<br />
|}<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first task and one of the cornerstones of the project is a wrapper class for SDL_Texture. This class should encapsulate all functionality related to rendering and manipulating textures. The following functions are required:<br />
<br />
1) Load a texture from a file.<br />
2) Rotate the texture.<br />
3) Scale the texture with a given algorithm (BI or NPS).<br />
4) Flip the texture.<br />
5) Set alpha or color blend.<br />
6) Render the texture.<br />
7) Return a surface containing the image data corresponding to the texture's contents.<br />
<br />
sdl::ttexture already implements 1 and 6. SDL provides functionality for 2-5, but not necessarily through separate functions; for that reason, the parameters will need to be stored for rotate, scale and flip to be later passed to SDL_RenderCopyEx.<br />
<br />
I'd prefer the texture to remember which renderer it's attached to and put the render function into ttexture instead of twindow. This way it's impossible that the user will ever try to render a texture with the wrong renderer.<br />
<br />
ttexture will also have to store the dimensions of the image because that needs to be passed to SDL_RenderCopy (the texture is stretched to the window's size otherwise).<br />
<br />
<br />
Some of the current functionality of sdl_utils can't be (or more precisely shouldn't be) wrapped in ttexture, for example draw_rectangle or draw_solid_tinted_rectangle. These functions will have counterparts providing the same functionality for textures/renderers. A convenience shortcut for rendering text onto a texture instead of drawing it onto a surface then manually converting would be nice, too.<br />
<br />
<br />
When ttexture is complete, we'll have to make sure that other parts of the program can access it through the established codepaths. Loading textures will happen through twindow.<br />
<br />
image.?pp is the other domain which has to be updated. The image cache API need not change too much, but the internals will need some work. The most important change is that with textures lighting, scaling, etc. are all cheap operations so there's no need to flush the caches when for e.g. the zoom factor changes.<br />
<br />
<br />
I think the storyscreen code is the ideal place to first put ttexture in use. It is rather isolated and simple, still it uses a lot of SDL functionality. The major difficulty with the storyscreen is that the surfaces that are blitted on the screen are assembled from many other surfaces. This behavior could be preserved with SDL2 either by using a software renderer or simply sticking to SDL_Surface, but we'd lose hardware acceleration either way (which is especially important here, because story screen background scaling is currently one of the most noticeable performance bottlenecks of Wesnoth). So, the semantics must be changed to render directly on the screen.<br />
<br />
<br />
Last but not least the main interface components, display, game_display and the minimap have to be adjusted. The minimap has the same problem as the storyscreen: it assembles a map image from tiles, and then scales the result. The only difference is that scaling isn't required in any intermediate step, so using a software renderer and then creating a texture from the result could be a viable technique here.<br />
<br />
I couldn't yet read through display and game_display in detail, but from my researches so far their semantics don't need to be changed, provided the texture API implemented so far behaves similarly to the old surface-based code. It'll still require quite some work to adjust all the calls, though.<br />
<br />
When working on display and game_display, I'd like to spare time to write a comprehensive document on these classes to make future modifications easier.<br />
<br />
<br />
In any extra time left, I could work on updating the event handler to support SDL2's textinput API.<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=55301SoC2014 lipkab SDL22014-07-03T20:12:38Z<p>Lipk: /* Questionnaire */</p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_SDL2]]<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
I propose to help with the SDL2 transition.<br />
<br />
I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
I'm a university student from Budapest, Hungary. I've been an OSS user since my Vista installation committed harakiri somewhen in mid-2009. Although I took a few courses in programming, I'm mostly an autodidact. Besides programming, I like origami, furry animals and pancakes.<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology). Well, in fact, I'm formally a Molecular Bionics student, however, in practice I take CS courses and next year I'll be able to officially switch majors.<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
SDL2 related commits:<br />
* Commits 821b009 to 37c7100: fix mouse wheel for SDL2.<br />
* Commit 7b6c125: sdl2 option for SCons.<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the greater challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
I usually listen to and consider any advice but I tend to be rather insistant on my own ideas.<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my contributions for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I wanted to work on this anyways, getting help and payment for it made it even more appealing.<br />
<br />
'''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".'''<br />
<br />
{| class="wikitable"<br />
|-<br />
!Week<br />
!Task<br />
!Notes<br />
!Status<br />
|-<br />
| 1<br />
| Working on ttexture<br />
| I'll have exams during this period<br />
| Done!<br />
|-<br />
| 2<br />
| Finish ttexture and add texture siblings for any function in sdl_utils that doesn't have an equivalent in ttexture<br />
| I'll have exams during this period<br />
| Done!<br />
|-<br />
| 3<br />
| Add texture loading to twindow (if it's not yet be there by then), start converting the image cache<br />
| No more exams! (I hope)<br />
| Done!<br />
|-<br />
| 4<br />
| Finish converting the image cache, and do a lot of testing<br />
| If both I and a spritesheet student get accepted, we might have some interference at this part<br />
| Done!<br />
|-<br />
| 5<br />
| Delay.<br />
|<br />
|<br />
|-<br />
| 6<br />
| Delay.<br />
|<br />
|<br />
|-<br />
| 7<br />
| Start working on the storyscreen. Plan the conversion (semantical changes might be necessary, see below), start implementation<br />
|<br />
| In progress.<br />
|-<br />
| 8<br />
| Finish the storyscreen<br />
| Since this will be the first occasion to put ttexture into real use, I expect that these two weeks will include some bugfixing as well<br />
|<br />
|-<br />
| 9<br />
| Plan the conversion for display and game_display. Convert the minimap<br />
|<br />
|<br />
|-<br />
| 10<br />
| Change function calls in display and game display to use textures instead of surfaces, make it compile<br />
|<br />
|<br />
|-<br />
| 11<br />
| Fix any problems with dispay and game_display<br />
|<br />
|<br />
|-<br />
| 12<br />
| Write documentation for display & game_display<br />
|<br />
|<br />
|-<br />
|}<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first task and one of the cornerstones of the project is a wrapper class for SDL_Texture. This class should encapsulate all functionality related to rendering and manipulating textures. The following functions are required:<br />
<br />
1) Load a texture from a file.<br />
2) Rotate the texture.<br />
3) Scale the texture with a given algorithm (BI or NPS).<br />
4) Flip the texture.<br />
5) Set alpha or color blend.<br />
6) Render the texture.<br />
7) Return a surface containing the image data corresponding to the texture's contents.<br />
<br />
sdl::ttexture already implements 1 and 6. SDL provides functionality for 2-5, but not necessarily through separate functions; for that reason, the parameters will need to be stored for rotate, scale and flip to be later passed to SDL_RenderCopyEx.<br />
<br />
I'd prefer the texture to remember which renderer it's attached to and put the render function into ttexture instead of twindow. This way it's impossible that the user will ever try to render a texture with the wrong renderer.<br />
<br />
ttexture will also have to store the dimensions of the image because that needs to be passed to SDL_RenderCopy (the texture is stretched to the window's size otherwise).<br />
<br />
<br />
Some of the current functionality of sdl_utils can't be (or more precisely shouldn't be) wrapped in ttexture, for example draw_rectangle or draw_solid_tinted_rectangle. These functions will have counterparts providing the same functionality for textures/renderers. A convenience shortcut for rendering text onto a texture instead of drawing it onto a surface then manually converting would be nice, too.<br />
<br />
<br />
When ttexture is complete, we'll have to make sure that other parts of the program can access it through the established codepaths. Loading textures will happen through twindow.<br />
<br />
image.?pp is the other domain which has to be updated. The image cache API need not change too much, but the internals will need some work. The most important change is that with textures lighting, scaling, etc. are all cheap operations so there's no need to flush the caches when for e.g. the zoom factor changes.<br />
<br />
<br />
I think the storyscreen code is the ideal place to first put ttexture in use. It is rather isolated and simple, still it uses a lot of SDL functionality. The major difficulty with the storyscreen is that the surfaces that are blitted on the screen are assembled from many other surfaces. This behavior could be preserved with SDL2 either by using a software renderer or simply sticking to SDL_Surface, but we'd lose hardware acceleration either way (which is especially important here, because story screen background scaling is currently one of the most noticeable performance bottlenecks of Wesnoth). So, the semantics must be changed to render directly on the screen.<br />
<br />
<br />
Last but not least the main interface components, display, game_display and the minimap have to be adjusted. The minimap has the same problem as the storyscreen: it assembles a map image from tiles, and then scales the result. The only difference is that scaling isn't required in any intermediate step, so using a software renderer and then creating a texture from the result could be a viable technique here.<br />
<br />
I couldn't yet read through display and game_display in detail, but from my researches so far their semantics don't need to be changed, provided the texture API implemented so far behaves similarly to the old surface-based code. It'll still require quite some work to adjust all the calls, though.<br />
<br />
When working on display and game_display, I'd like to spare time to write a comprehensive document on these classes to make future modifications easier.<br />
<br />
<br />
In any extra time left, I could work on updating the event handler to support SDL2's textinput API.<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=55221SoC2014 lipkab SDL22014-06-17T18:20:59Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_SDL2]]<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
I propose to help with the SDL2 transition.<br />
<br />
I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
I'm a university student from Budapest, Hungary. I've been an OSS user since my Vista installation committed harakiri somewhen in mid-2009. Although I took a few courses in programming, I'm mostly an autodidact. Besides programming, I like origami, furry animals and pancakes.<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology). Well, in fact, I'm formally a Molecular Bionics student, however, in practice I take CS courses and next year I'll be able to officially switch majors.<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
SDL2 related commits:<br />
* Commits 821b009 to 37c7100: fix mouse wheel for SDL2.<br />
* Commit 7b6c125: sdl2 option for SCons.<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the greater challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
I usually listen to and consider any advice but I tend to be rather insistant on my own ideas.<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my contributions for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I wanted to work on this anyways, getting help and payment for it made it even more appealing.<br />
<br />
'''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".'''<br />
<br />
{| class="wikitable"<br />
|-<br />
!Week<br />
!Task<br />
!Notes<br />
!Status<br />
|-<br />
| 1<br />
| Working on ttexture<br />
| I'll have exams during this period<br />
| Done!<br />
|-<br />
| 2<br />
| Finish ttexture and add texture siblings for any function in sdl_utils that doesn't have an equivalent in ttexture<br />
| I'll have exams during this period<br />
| Done!<br />
|-<br />
| 3<br />
| Add texture loading to twindow (if it's not yet be there by then), start converting the image cache<br />
| No more exams! (I hope)<br />
| Done!<br />
|-<br />
| 4<br />
| Finish converting the image cache, and do a lot of testing<br />
| If both I and a spritesheet student get accepted, we might have some interference at this part<br />
| Done!<br />
|-<br />
| 5<br />
| Start working on the storyscreen. Plan the conversion (semantical changes might be necessary, see below), start implementation<br />
|<br />
|<br />
|-<br />
| 6<br />
| Finish the storyscreen<br />
| Since this will be the first occasion to put ttexture into real use, I expect that these two weeks will include some bugfixing as well<br />
|<br />
|-<br />
| 7<br />
| Plan the conversion for display and game_display. Convert the minimap<br />
|<br />
|<br />
|-<br />
| 8<br />
| Change function calls in display and game display to use textures instead of surfaces, make it compile<br />
|<br />
|<br />
|-<br />
| 9<br />
| Fix any problems with dispay and game_display<br />
|<br />
|<br />
|-<br />
| 10<br />
| Write documentation for display & game_display<br />
|<br />
|<br />
|-<br />
| 11<br />
| Buffer for delays OR start planning the conversion for the textinput API<br />
|<br />
|<br />
|-<br />
| 12<br />
| Buffer for delays OR convert GUI1 and GUI2 to use the textinput API<br />
|<br />
|<br />
|}<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first task and one of the cornerstones of the project is a wrapper class for SDL_Texture. This class should encapsulate all functionality related to rendering and manipulating textures. The following functions are required:<br />
<br />
1) Load a texture from a file.<br />
2) Rotate the texture.<br />
3) Scale the texture with a given algorithm (BI or NPS).<br />
4) Flip the texture.<br />
5) Set alpha or color blend.<br />
6) Render the texture.<br />
7) Return a surface containing the image data corresponding to the texture's contents.<br />
<br />
sdl::ttexture already implements 1 and 6. SDL provides functionality for 2-5, but not necessarily through separate functions; for that reason, the parameters will need to be stored for rotate, scale and flip to be later passed to SDL_RenderCopyEx.<br />
<br />
I'd prefer the texture to remember which renderer it's attached to and put the render function into ttexture instead of twindow. This way it's impossible that the user will ever try to render a texture with the wrong renderer.<br />
<br />
ttexture will also have to store the dimensions of the image because that needs to be passed to SDL_RenderCopy (the texture is stretched to the window's size otherwise).<br />
<br />
<br />
Some of the current functionality of sdl_utils can't be (or more precisely shouldn't be) wrapped in ttexture, for example draw_rectangle or draw_solid_tinted_rectangle. These functions will have counterparts providing the same functionality for textures/renderers. A convenience shortcut for rendering text onto a texture instead of drawing it onto a surface then manually converting would be nice, too.<br />
<br />
<br />
When ttexture is complete, we'll have to make sure that other parts of the program can access it through the established codepaths. Loading textures will happen through twindow.<br />
<br />
image.?pp is the other domain which has to be updated. The image cache API need not change too much, but the internals will need some work. The most important change is that with textures lighting, scaling, etc. are all cheap operations so there's no need to flush the caches when for e.g. the zoom factor changes.<br />
<br />
<br />
I think the storyscreen code is the ideal place to first put ttexture in use. It is rather isolated and simple, still it uses a lot of SDL functionality. The major difficulty with the storyscreen is that the surfaces that are blitted on the screen are assembled from many other surfaces. This behavior could be preserved with SDL2 either by using a software renderer or simply sticking to SDL_Surface, but we'd lose hardware acceleration either way (which is especially important here, because story screen background scaling is currently one of the most noticeable performance bottlenecks of Wesnoth). So, the semantics must be changed to render directly on the screen.<br />
<br />
<br />
Last but not least the main interface components, display, game_display and the minimap have to be adjusted. The minimap has the same problem as the storyscreen: it assembles a map image from tiles, and then scales the result. The only difference is that scaling isn't required in any intermediate step, so using a software renderer and then creating a texture from the result could be a viable technique here.<br />
<br />
I couldn't yet read through display and game_display in detail, but from my researches so far their semantics don't need to be changed, provided the texture API implemented so far behaves similarly to the old surface-based code. It'll still require quite some work to adjust all the calls, though.<br />
<br />
When working on display and game_display, I'd like to spare time to write a comprehensive document on these classes to make future modifications easier.<br />
<br />
<br />
In any extra time left, I could work on updating the event handler to support SDL2's textinput API.<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=55179SoC2014 lipkab SDL22014-06-10T19:44:27Z<p>Lipk: /* Questionnaire */</p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_SDL2]]<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
I propose to help with the SDL2 transition.<br />
<br />
I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
I'm a university student from Budapest, Hungary. I've been an OSS user since my Vista installation committed harakiri somewhen in mid-2009. Although I took a few courses in programming, I'm mostly an autodidact. Besides programming, I like origami, furry animals and pancakes.<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology). Well, in fact, I'm formally a Molecular Bionics student, however, in practice I take CS courses and next year I'll be able to officially switch majors.<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
SDL2 related commits:<br />
* Commits 821b009 to 37c7100: fix mouse wheel for SDL2.<br />
* Commit 7b6c125: sdl2 option for SCons.<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the greater challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
I usually listen to and consider any advice but I tend to be rather insistant on my own ideas.<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my contributions for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I wanted to work on this anyways, getting help and payment for it made it even more appealing.<br />
<br />
'''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".'''<br />
<br />
{| class="wikitable"<br />
|-<br />
!Week<br />
!Task<br />
!Notes<br />
!Status<br />
|-<br />
| 1<br />
| Working on ttexture<br />
| I'll have exams during this period<br />
| Done!<br />
|-<br />
| 2<br />
| Finish ttexture and add texture siblings for any function in sdl_utils that doesn't have an equivalent in ttexture<br />
| I'll have exams during this period<br />
| Done!<br />
|-<br />
| 3<br />
| Add texture loading to twindow (if it's not yet be there by then), start converting the image cache<br />
| No more exams! (I hope)<br />
| In progress.<br />
|-<br />
| 4<br />
| Finish converting the image cache, and do a lot of testing<br />
| If both I and a spritesheet student get accepted, we might have some interference at this part<br />
|<br />
|-<br />
| 5<br />
| Start working on the storyscreen. Plan the conversion (semantical changes might be necessary, see below), start implementation<br />
|<br />
|<br />
|-<br />
| 6<br />
| Finish the storyscreen<br />
| Since this will be the first occasion to put ttexture into real use, I expect that these two weeks will include some bugfixing as well<br />
|<br />
|-<br />
| 7<br />
| Plan the conversion for display and game_display. Convert the minimap<br />
|<br />
|<br />
|-<br />
| 8<br />
| Change function calls in display and game display to use textures instead of surfaces, make it compile<br />
|<br />
|<br />
|-<br />
| 9<br />
| Fix any problems with dispay and game_display<br />
|<br />
|<br />
|-<br />
| 10<br />
| Write documentation for display & game_display<br />
|<br />
|<br />
|-<br />
| 11<br />
| Buffer for delays OR start planning the conversion for the textinput API<br />
|<br />
|<br />
|-<br />
| 12<br />
| Buffer for delays OR convert GUI1 and GUI2 to use the textinput API<br />
|<br />
|<br />
|}<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first task and one of the cornerstones of the project is a wrapper class for SDL_Texture. This class should encapsulate all functionality related to rendering and manipulating textures. The following functions are required:<br />
<br />
1) Load a texture from a file.<br />
2) Rotate the texture.<br />
3) Scale the texture with a given algorithm (BI or NPS).<br />
4) Flip the texture.<br />
5) Set alpha or color blend.<br />
6) Render the texture.<br />
7) Return a surface containing the image data corresponding to the texture's contents.<br />
<br />
sdl::ttexture already implements 1 and 6. SDL provides functionality for 2-5, but not necessarily through separate functions; for that reason, the parameters will need to be stored for rotate, scale and flip to be later passed to SDL_RenderCopyEx.<br />
<br />
I'd prefer the texture to remember which renderer it's attached to and put the render function into ttexture instead of twindow. This way it's impossible that the user will ever try to render a texture with the wrong renderer.<br />
<br />
ttexture will also have to store the dimensions of the image because that needs to be passed to SDL_RenderCopy (the texture is stretched to the window's size otherwise).<br />
<br />
<br />
Some of the current functionality of sdl_utils can't be (or more precisely shouldn't be) wrapped in ttexture, for example draw_rectangle or draw_solid_tinted_rectangle. These functions will have counterparts providing the same functionality for textures/renderers. A convenience shortcut for rendering text onto a texture instead of drawing it onto a surface then manually converting would be nice, too.<br />
<br />
<br />
When ttexture is complete, we'll have to make sure that other parts of the program can access it through the established codepaths. Loading textures will happen through twindow.<br />
<br />
image.?pp is the other domain which has to be updated. The image cache API need not change too much, but the internals will need some work. The most important change is that with textures lighting, scaling, etc. are all cheap operations so there's no need to flush the caches when for e.g. the zoom factor changes.<br />
<br />
<br />
I think the storyscreen code is the ideal place to first put ttexture in use. It is rather isolated and simple, still it uses a lot of SDL functionality. The major difficulty with the storyscreen is that the surfaces that are blitted on the screen are assembled from many other surfaces. This behavior could be preserved with SDL2 either by using a software renderer or simply sticking to SDL_Surface, but we'd lose hardware acceleration either way (which is especially important here, because story screen background scaling is currently one of the most noticeable performance bottlenecks of Wesnoth). So, the semantics must be changed to render directly on the screen.<br />
<br />
<br />
Last but not least the main interface components, display, game_display and the minimap have to be adjusted. The minimap has the same problem as the storyscreen: it assembles a map image from tiles, and then scales the result. The only difference is that scaling isn't required in any intermediate step, so using a software renderer and then creating a texture from the result could be a viable technique here.<br />
<br />
I couldn't yet read through display and game_display in detail, but from my researches so far their semantics don't need to be changed, provided the texture API implemented so far behaves similarly to the old surface-based code. It'll still require quite some work to adjust all the calls, though.<br />
<br />
When working on display and game_display, I'd like to spare time to write a comprehensive document on these classes to make future modifications easier.<br />
<br />
<br />
In any extra time left, I could work on updating the event handler to support SDL2's textinput API.<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=55128SoC2014 lipkab SDL22014-06-03T18:47:56Z<p>Lipk: /* Questionnaire */</p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_SDL2]]<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
I propose to help with the SDL2 transition.<br />
<br />
I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
I'm a university student from Budapest, Hungary. I've been an OSS user since my Vista installation committed harakiri somewhen in mid-2009. Although I took a few courses in programming, I'm mostly an autodidact. Besides programming, I like origami, furry animals and pancakes.<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology). Well, in fact, I'm formally a Molecular Bionics student, however, in practice I take CS courses and next year I'll be able to officially switch majors.<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
SDL2 related commits:<br />
* Commits 821b009 to 37c7100: fix mouse wheel for SDL2.<br />
* Commit 7b6c125: sdl2 option for SCons.<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the greater challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
I usually listen to and consider any advice but I tend to be rather insistant on my own ideas.<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my contributions for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I wanted to work on this anyways, getting help and payment for it made it even more appealing.<br />
<br />
'''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".'''<br />
<br />
{| class="wikitable"<br />
|-<br />
!Week<br />
!Task<br />
!Notes<br />
!Status<br />
|-<br />
| 1<br />
| Working on ttexture<br />
| I'll have exams during this period<br />
| Done!<br />
|-<br />
| 2<br />
| Finish ttexture and add texture siblings for any function in sdl_utils that doesn't have an equivalent in ttexture<br />
| I'll have exams during this period<br />
| Done!<br />
|-<br />
| 3<br />
| Add texture loading to twindow (if it's not yet be there by then), start converting the image cache<br />
| No more exams! (I hope)<br />
|<br />
|-<br />
| 4<br />
| Finish converting the image cache, and do a lot of testing<br />
| If both I and a spritesheet student get accepted, we might have some interference at this part<br />
|<br />
|-<br />
| 5<br />
| Start working on the storyscreen. Plan the conversion (semantical changes might be necessary, see below), start implementation<br />
|<br />
|<br />
|-<br />
| 6<br />
| Finish the storyscreen<br />
| Since this will be the first occasion to put ttexture into real use, I expect that these two weeks will include some bugfixing as well<br />
|<br />
|-<br />
| 7<br />
| Plan the conversion for display and game_display. Convert the minimap<br />
|<br />
|<br />
|-<br />
| 8<br />
| Change function calls in display and game display to use textures instead of surfaces, make it compile<br />
|<br />
|<br />
|-<br />
| 9<br />
| Fix any problems with dispay and game_display<br />
|<br />
|<br />
|-<br />
| 10<br />
| Write documentation for display & game_display<br />
|<br />
|<br />
|-<br />
| 11<br />
| Buffer for delays OR start planning the conversion for the textinput API<br />
|<br />
|<br />
|-<br />
| 12<br />
| Buffer for delays OR convert GUI1 and GUI2 to use the textinput API<br />
|<br />
|<br />
|}<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first task and one of the cornerstones of the project is a wrapper class for SDL_Texture. This class should encapsulate all functionality related to rendering and manipulating textures. The following functions are required:<br />
<br />
1) Load a texture from a file.<br />
2) Rotate the texture.<br />
3) Scale the texture with a given algorithm (BI or NPS).<br />
4) Flip the texture.<br />
5) Set alpha or color blend.<br />
6) Render the texture.<br />
7) Return a surface containing the image data corresponding to the texture's contents.<br />
<br />
sdl::ttexture already implements 1 and 6. SDL provides functionality for 2-5, but not necessarily through separate functions; for that reason, the parameters will need to be stored for rotate, scale and flip to be later passed to SDL_RenderCopyEx.<br />
<br />
I'd prefer the texture to remember which renderer it's attached to and put the render function into ttexture instead of twindow. This way it's impossible that the user will ever try to render a texture with the wrong renderer.<br />
<br />
ttexture will also have to store the dimensions of the image because that needs to be passed to SDL_RenderCopy (the texture is stretched to the window's size otherwise).<br />
<br />
<br />
Some of the current functionality of sdl_utils can't be (or more precisely shouldn't be) wrapped in ttexture, for example draw_rectangle or draw_solid_tinted_rectangle. These functions will have counterparts providing the same functionality for textures/renderers. A convenience shortcut for rendering text onto a texture instead of drawing it onto a surface then manually converting would be nice, too.<br />
<br />
<br />
When ttexture is complete, we'll have to make sure that other parts of the program can access it through the established codepaths. Loading textures will happen through twindow.<br />
<br />
image.?pp is the other domain which has to be updated. The image cache API need not change too much, but the internals will need some work. The most important change is that with textures lighting, scaling, etc. are all cheap operations so there's no need to flush the caches when for e.g. the zoom factor changes.<br />
<br />
<br />
I think the storyscreen code is the ideal place to first put ttexture in use. It is rather isolated and simple, still it uses a lot of SDL functionality. The major difficulty with the storyscreen is that the surfaces that are blitted on the screen are assembled from many other surfaces. This behavior could be preserved with SDL2 either by using a software renderer or simply sticking to SDL_Surface, but we'd lose hardware acceleration either way (which is especially important here, because story screen background scaling is currently one of the most noticeable performance bottlenecks of Wesnoth). So, the semantics must be changed to render directly on the screen.<br />
<br />
<br />
Last but not least the main interface components, display, game_display and the minimap have to be adjusted. The minimap has the same problem as the storyscreen: it assembles a map image from tiles, and then scales the result. The only difference is that scaling isn't required in any intermediate step, so using a software renderer and then creating a texture from the result could be a viable technique here.<br />
<br />
I couldn't yet read through display and game_display in detail, but from my researches so far their semantics don't need to be changed, provided the texture API implemented so far behaves similarly to the old surface-based code. It'll still require quite some work to adjust all the calls, though.<br />
<br />
When working on display and game_display, I'd like to spare time to write a comprehensive document on these classes to make future modifications easier.<br />
<br />
<br />
In any extra time left, I could work on updating the event handler to support SDL2's textinput API.<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=55112SoC2014 lipkab SDL22014-05-30T08:51:00Z<p>Lipk: /* Questionnaire */</p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_SDL2]]<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
I propose to help with the SDL2 transition.<br />
<br />
I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
I'm a university student from Budapest, Hungary. I've been an OSS user since my Vista installation committed harakiri somewhen in mid-2009. Although I took a few courses in programming, I'm mostly an autodidact. Besides programming, I like origami, furry animals and pancakes.<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology). Well, in fact, I'm formally a Molecular Bionics student, however, in practice I take CS courses and next year I'll be able to officially switch majors.<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
SDL2 related commits:<br />
* Commits 821b009 to 37c7100: fix mouse wheel for SDL2.<br />
* Commit 7b6c125: sdl2 option for SCons.<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the greater challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
I usually listen to and consider any advice but I tend to be rather insistant on my own ideas.<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my contributions for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I wanted to work on this anyways, getting help and payment for it made it even more appealing.<br />
<br />
'''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".'''<br />
<br />
{| class="wikitable"<br />
|-<br />
!Week<br />
!Task<br />
!Notes<br />
!Status<br />
|-<br />
| 1<br />
| Working on ttexture<br />
| I'll have exams during this period<br />
| Done!<br />
|-<br />
| 2<br />
| Finish ttexture and add texture siblings for any function in sdl_utils that doesn't have an equivalent in ttexture<br />
| I'll have exams during this period<br />
|<br />
|-<br />
| 3<br />
| Add texture loading to twindow (if it's not yet be there by then), start converting the image cache<br />
| No more exams! (I hope)<br />
|<br />
|-<br />
| 4<br />
| Finish converting the image cache, and do a lot of testing<br />
| If both I and a spritesheet student get accepted, we might have some interference at this part<br />
|<br />
|-<br />
| 5<br />
| Start working on the storyscreen. Plan the conversion (semantical changes might be necessary, see below), start implementation<br />
|<br />
|<br />
|-<br />
| 6<br />
| Finish the storyscreen<br />
| Since this will be the first occasion to put ttexture into real use, I expect that these two weeks will include some bugfixing as well<br />
|<br />
|-<br />
| 7<br />
| Plan the conversion for display and game_display. Convert the minimap<br />
|<br />
|<br />
|-<br />
| 8<br />
| Change function calls in display and game display to use textures instead of surfaces, make it compile<br />
|<br />
|<br />
|-<br />
| 9<br />
| Fix any problems with dispay and game_display<br />
|<br />
|<br />
|-<br />
| 10<br />
| Write documentation for display & game_display<br />
|<br />
|<br />
|-<br />
| 11<br />
| Buffer for delays OR start planning the conversion for the textinput API<br />
|<br />
|<br />
|-<br />
| 12<br />
| Buffer for delays OR convert GUI1 and GUI2 to use the textinput API<br />
|<br />
|<br />
|}<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first task and one of the cornerstones of the project is a wrapper class for SDL_Texture. This class should encapsulate all functionality related to rendering and manipulating textures. The following functions are required:<br />
<br />
1) Load a texture from a file.<br />
2) Rotate the texture.<br />
3) Scale the texture with a given algorithm (BI or NPS).<br />
4) Flip the texture.<br />
5) Set alpha or color blend.<br />
6) Render the texture.<br />
7) Return a surface containing the image data corresponding to the texture's contents.<br />
<br />
sdl::ttexture already implements 1 and 6. SDL provides functionality for 2-5, but not necessarily through separate functions; for that reason, the parameters will need to be stored for rotate, scale and flip to be later passed to SDL_RenderCopyEx.<br />
<br />
I'd prefer the texture to remember which renderer it's attached to and put the render function into ttexture instead of twindow. This way it's impossible that the user will ever try to render a texture with the wrong renderer.<br />
<br />
ttexture will also have to store the dimensions of the image because that needs to be passed to SDL_RenderCopy (the texture is stretched to the window's size otherwise).<br />
<br />
<br />
Some of the current functionality of sdl_utils can't be (or more precisely shouldn't be) wrapped in ttexture, for example draw_rectangle or draw_solid_tinted_rectangle. These functions will have counterparts providing the same functionality for textures/renderers. A convenience shortcut for rendering text onto a texture instead of drawing it onto a surface then manually converting would be nice, too.<br />
<br />
<br />
When ttexture is complete, we'll have to make sure that other parts of the program can access it through the established codepaths. Loading textures will happen through twindow.<br />
<br />
image.?pp is the other domain which has to be updated. The image cache API need not change too much, but the internals will need some work. The most important change is that with textures lighting, scaling, etc. are all cheap operations so there's no need to flush the caches when for e.g. the zoom factor changes.<br />
<br />
<br />
I think the storyscreen code is the ideal place to first put ttexture in use. It is rather isolated and simple, still it uses a lot of SDL functionality. The major difficulty with the storyscreen is that the surfaces that are blitted on the screen are assembled from many other surfaces. This behavior could be preserved with SDL2 either by using a software renderer or simply sticking to SDL_Surface, but we'd lose hardware acceleration either way (which is especially important here, because story screen background scaling is currently one of the most noticeable performance bottlenecks of Wesnoth). So, the semantics must be changed to render directly on the screen.<br />
<br />
<br />
Last but not least the main interface components, display, game_display and the minimap have to be adjusted. The minimap has the same problem as the storyscreen: it assembles a map image from tiles, and then scales the result. The only difference is that scaling isn't required in any intermediate step, so using a software renderer and then creating a texture from the result could be a viable technique here.<br />
<br />
I couldn't yet read through display and game_display in detail, but from my researches so far their semantics don't need to be changed, provided the texture API implemented so far behaves similarly to the old surface-based code. It'll still require quite some work to adjust all the calls, though.<br />
<br />
When working on display and game_display, I'd like to spare time to write a comprehensive document on these classes to make future modifications easier.<br />
<br />
<br />
In any extra time left, I could work on updating the event handler to support SDL2's textinput API.<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=54378SoC2014 lipkab SDL22014-04-04T08:45:20Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_SDL2]]<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
I propose to help with the SDL2 transition.<br />
<br />
I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
I'm a university student from Budapest, Hungary. I've been an OSS user since my Vista installation committed harakiri somewhen in mid-2009. Although I took a few courses in programming, I'm mostly an autodidact. Besides programming, I like origami, furry animals and pancakes.<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology). Well, in fact, I'm formally a Molecular Bionics student, however, in practice I take CS courses and next year I'll be able to officially switch majors.<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
SDL2 related commits:<br />
* Commits 821b009 to 37c7100: fix mouse wheel for SDL2.<br />
* Commit 7b6c125: sdl2 option for SCons.<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the greater challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
I usually listen to and consider any advice but I tend to be rather insistant on my own ideas.<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my contributions for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I wanted to work on this anyways, getting help and payment for it made it even more appealing.<br />
<br />
'''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".'''<br />
<br />
{| class="wikitable"<br />
|-<br />
!Week<br />
!Task<br />
!Notes<br />
|-<br />
| 1<br />
| Working on ttexture<br />
| I'll have exams during this period<br />
|-<br />
| 2<br />
| Finish ttexture and add texture siblings for any function in sdl_utils that doesn't have an equivalent in ttexture<br />
| I'll have exams during this period<br />
|-<br />
| 3<br />
| Add texture loading to twindow (if it's not yet be there by then), start converting the image cache<br />
| No more exams! (I hope)<br />
|-<br />
| 4<br />
| Finish converting the image cache, and do a lot of testing<br />
| If both I and a spritesheet student get accepted, we might have some interference at this part<br />
|-<br />
| 5<br />
| Start working on the storyscreen. Plan the conversion (semantical changes might be necessary, see below), start implementation<br />
|<br />
|-<br />
| 6<br />
| Finish the storyscreen<br />
| Since this will be the first occasion to put ttexture into real use, I expect that these two weeks will include some bugfixing as well<br />
|-<br />
| 7<br />
| Plan the conversion for display and game_display. Convert the minimap<br />
|<br />
|-<br />
| 8<br />
| Change function calls in display and game display to use textures instead of surfaces, make it compile<br />
|<br />
|-<br />
| 9<br />
| Fix any problems with dispay and game_display<br />
|<br />
|-<br />
| 10<br />
| Write documentation for display & game_display<br />
|<br />
|-<br />
| 11<br />
| Buffer for delays OR start planning the conversion for the textinput API<br />
|<br />
|-<br />
| 12<br />
| Buffer for delays OR convert GUI1 and GUI2 to use the textinput API<br />
|<br />
|}<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first task and one of the cornerstones of the project is a wrapper class for SDL_Texture. This class should encapsulate all functionality related to rendering and manipulating textures. The following functions are required:<br />
<br />
1) Load a texture from a file.<br />
2) Rotate the texture.<br />
3) Scale the texture with a given algorithm (BI or NPS).<br />
4) Flip the texture.<br />
5) Set alpha or color blend.<br />
6) Render the texture.<br />
7) Return a surface containing the image data corresponding to the texture's contents.<br />
<br />
sdl::ttexture already implements 1 and 6. SDL provides functionality for 2-5, but not necessarily through separate functions; for that reason, the parameters will need to be stored for rotate, scale and flip to be later passed to SDL_RenderCopyEx.<br />
<br />
I'd prefer the texture to remember which renderer it's attached to and put the render function into ttexture instead of twindow. This way it's impossible that the user will ever try to render a texture with the wrong renderer.<br />
<br />
ttexture will also have to store the dimensions of the image because that needs to be passed to SDL_RenderCopy (the texture is stretched to the window's size otherwise).<br />
<br />
<br />
Some of the current functionality of sdl_utils can't be (or more precisely shouldn't be) wrapped in ttexture, for example draw_rectangle or draw_solid_tinted_rectangle. These functions will have counterparts providing the same functionality for textures/renderers. A convenience shortcut for rendering text onto a texture instead of drawing it onto a surface then manually converting would be nice, too.<br />
<br />
<br />
When ttexture is complete, we'll have to make sure that other parts of the program can access it through the established codepaths. Loading textures will happen through twindow.<br />
<br />
image.?pp is the other domain which has to be updated. The image cache API need not change too much, but the internals will need some work. The most important change is that with textures lighting, scaling, etc. are all cheap operations so there's no need to flush the caches when for e.g. the zoom factor changes.<br />
<br />
<br />
I think the storyscreen code is the ideal place to first put ttexture in use. It is rather isolated and simple, still it uses a lot of SDL functionality. The major difficulty with the storyscreen is that the surfaces that are blitted on the screen are assembled from many other surfaces. This behavior could be preserved with SDL2 either by using a software renderer or simply sticking to SDL_Surface, but we'd lose hardware acceleration either way (which is especially important here, because story screen background scaling is currently one of the most noticeable performance bottlenecks of Wesnoth). So, the semantics must be changed to render directly on the screen.<br />
<br />
<br />
Last but not least the main interface components, display, game_display and the minimap have to be adjusted. The minimap has the same problem as the storyscreen: it assembles a map image from tiles, and then scales the result. The only difference is that scaling isn't required in any intermediate step, so using a software renderer and then creating a texture from the result could be a viable technique here.<br />
<br />
I couldn't yet read through display and game_display in detail, but from my researches so far their semantics don't need to be changed, provided the texture API implemented so far behaves similarly to the old surface-based code. It'll still require quite some work to adjust all the calls, though.<br />
<br />
When working on display and game_display, I'd like to spare time to write a comprehensive document on these classes to make future modifications easier.<br />
<br />
<br />
In any extra time left, I could work on updating the event handler to support SDL2's textinput API.<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=54377SoC2014 lipkab SDL22014-04-04T08:43:49Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_SDL2]]<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
I propose to help with the SDL2 transition.<br />
<br />
I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
I'm a university student from Budapest, Hungary. I've been an OSS user since my Vista installation committed harakiri somewhen in mid-2009. Although I took a few courses in programming, I'm mostly an autodidact. Besides programming, I like origami, furry animals and pancakes.<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology). Well, in fact, I'm formally a Molecular Bionics student, however, in practice I take CS courses and next year I'll be able to officially switch majors.<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
SDL2 related commits:<br />
* Commits 821b009 to 37c7100: fix mouse wheel for SDL2.<br />
* Commit 7b6c125: sdl2 option for SCons.<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the greater challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
I usually listen to and consider any advice but I tend to be rather insistant on my own ideas.<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my contributions for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I wanted to work on this anyways, getting help and payment for it made it even more appealing.<br />
<br />
'''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".'''<br />
<br />
{| class="wikitable"<br />
|-<br />
!Week<br />
!Task<br />
!Notes<br />
|-<br />
| 1<br />
| Working on ttexture<br />
| I'll have exams during this period<br />
|-<br />
| 2<br />
| Finish ttexture and add texture siblings for any function in sdl_utils that doesn't have an equivalent in ttexture<br />
| I'll have exams during this period<br />
|-<br />
| 3<br />
| Add texture loading to twindow (if it's not yet be there by then), start converting the image cache<br />
| No more exams! (I hope)<br />
|-<br />
| 4<br />
| Finish converting the image cache, and do a lot of testing<br />
| If both I and a spritesheet student get accepted, we might have some interference at this part<br />
|-<br />
| 5<br />
| Start working on the storyscreen. Plan the conversion (semantical changes might be necessary, see below), start implementation<br />
|<br />
|-<br />
| 6<br />
| Finish the storyscreen<br />
| Since this will be the first occasion to put ttexture into real use, I expect that these two weeks will include some bugfixing as well<br />
|-<br />
| 7<br />
| Plan the conversion for display and game_display. Convert the minimap<br />
|<br />
|-<br />
| 8<br />
| Change function calls in display and game display to use textures instead of surfaces, make it compile<br />
|<br />
|-<br />
| 9<br />
| Fix any problems with dispay and game_display<br />
|<br />
|-<br />
| 10<br />
| Write documentation for display & game_display<br />
|<br />
|-<br />
| 11<br />
| Buffer for delays OR start planning the conversion for the textinput API. <br />
|<br />
|-<br />
| 12<br />
| Buffer for delays OR convert GUI1 and GUI2 to use the textinput API<br />
|<br />
|}<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first task and one of the cornerstones of the project is a wrapper class for SDL_Texture. This class should encapsulate all functionality related to rendering and manipulating textures. The following functions are required:<br />
<br />
1) Load a texture from a file.<br />
2) Rotate the texture.<br />
3) Scale the texture with a given algorithm (BI or NPS).<br />
4) Flip the texture.<br />
5) Set alpha or color blend.<br />
6) Render the texture.<br />
7) Return a surface containing the image data corresponding to the texture's contents.<br />
<br />
sdl::ttexture already implements 1 and 6. SDL provides functionality for 2-5, but not necessarily through separate functions; for that reason, the parameters will need to be stored for rotate, scale and flip to be later passed to SDL_RenderCopyEx.<br />
<br />
I'd prefer the texture to remember which renderer it's attached to and put the render function into ttexture instead of twindow. This way it's impossible that the user will ever try to render a texture with the wrong renderer.<br />
<br />
ttexture will also have to store the dimensions of the image because that needs to be passed to SDL_RenderCopy (the texture is stretched to the window's size otherwise).<br />
<br />
<br />
Some of the current functionality of sdl_utils can't be (or more precisely shouldn't be) wrapped in ttexture, for example draw_rectangle or draw_solid_tinted_rectangle. These functions will have counterparts providing the same functionality for textures/renderers. A convenience shortcut for rendering text onto a texture instead of drawing it onto a surface then manually converting would be nice, too.<br />
<br />
<br />
When ttexture is complete, we'll have to make sure that other parts of the program can access it through the established codepaths. Loading textures will happen through twindow.<br />
<br />
image.?pp is the other domain which has to be updated. The image cache API need not change too much, but the internals will need some work. The most important change is that with textures lighting, scaling, etc. are all cheap operations so there's no need to flush the caches when for e.g. the zoom factor changes.<br />
<br />
<br />
I think the storyscreen code is the ideal place to first put ttexture in use. It is rather isolated and simple, still it uses a lot of SDL functionality. The major difficulty with the storyscreen is that the surfaces that are blitted on the screen are assembled from many other surfaces. This behavior could be preserved with SDL2 either by using a software renderer or simply sticking to SDL_Surface, but we'd lose hardware acceleration either way (which is especially important here, because story screen background scaling is currently one of the most noticeable performance bottlenecks of Wesnoth). So, the semantics must be changed to render directly on the screen.<br />
<br />
<br />
Last but not least the main interface components, display, game_display and the minimap have to be adjusted. The minimap has the same problem as the storyscreen: it assembles a map image from tiles, and then scales the result. The only difference is that scaling isn't required in any intermediate step, so using a software renderer and then creating a texture from the result could be a viable technique here.<br />
<br />
I couldn't yet read through display and game_display in detail, but from my researches so far their semantics don't need to be changed, provided the texture API implemented so far behaves similarly to the old surface-based code. It'll still require quite some work to adjust all the calls, though.<br />
<br />
When working on display and game_display, I'd like to spare time to write a comprehensive document on these classes to make future modifications easier.<br />
<br />
<br />
In any extra time left, I could work on updating the event handler to support SDL2's textinput API.<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=54376SoC2014 lipkab SDL22014-04-04T08:42:59Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_SDL2]]<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
I propose to help with the SDL2 transition.<br />
<br />
I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
I'm a university student from Budapest, Hungary. I've been an OSS user since my Vista installation committed harakiri somewhen in mid-2009. Although I took a few courses in programming, I'm mostly an autodidact. Besides programming, I like origami, furry animals and pancakes.<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology). Well, in fact, I'm formally a Molecular Bionics student, however, in practice I take CS courses and next year I'll be able to officially switch majors.<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
SDL2 related commits:<br />
* Commits 821b009 to 37c7100: fix mouse wheel for SDL2.<br />
* Commit 7b6c125: sdl2 option for SCons.<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the greater challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
I usually listen to and consider any advice but I tend to be rather insistant on my own ideas.<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my contributions for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I wanted to work on this anyways, getting help and payment for it made it even more appealing.<br />
<br />
'''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".'''<br />
<br />
{| class="wikitable"<br />
|-<br />
!Week<br />
!Task<br />
!Notes<br />
|-<br />
| 1<br />
| Working on ttexture<br />
| I'll have exams during this period<br />
|-<br />
| 2<br />
| Finish ttexture and add texture siblings for any function in sdl_utils that doesn't have an equivalent in ttexture<br />
| I'll have exams during this period<br />
|-<br />
| 3<br />
| Add texture loading to twindow (if it's not yet be there by then), start converting the image cache<br />
| No more exams! (I hope)<br />
|-<br />
| 4<br />
| Finish converting the image cache, and do a lot of testing<br />
| If both I and a spritesheet student get accepted, we might have some interference at this part<br />
|-<br />
| 5<br />
| Start working on the storyscreen. Plan the conversion (semantical changes might be necessary, see below), start implementation<br />
|<br />
|-<br />
| 6<br />
| Finish the storyscreen.<br />
| Since this will be the first occasion to put ttexture into use, I expect that these two weeks will include some bugfixing as well<br />
|-<br />
| 7<br />
| Plan the conversion for display and game_display. Convert the minimap<br />
|<br />
|-<br />
| 8<br />
| Change function calls in display and game display to use textures instead of surfaces, make it compile<br />
|<br />
|-<br />
| 9<br />
| Fix any problems with dispay and game_display<br />
|<br />
|-<br />
| 10<br />
| Write documentation for display & game_display<br />
|<br />
|-<br />
| 11<br />
| Buffer for delays OR start planning the conversion for the textinput API. <br />
|<br />
|-<br />
| 12<br />
| Buffer for delays OR convert GUI1 and GUI2 to use the textinput API<br />
|<br />
|}<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first task and one of the cornerstones of the project is a wrapper class for SDL_Texture. This class should encapsulate all functionality related to rendering and manipulating textures. The following functions are required:<br />
<br />
1) Load a texture from a file.<br />
2) Rotate the texture.<br />
3) Scale the texture with a given algorithm (BI or NPS).<br />
4) Flip the texture.<br />
5) Set alpha or color blend.<br />
6) Render the texture.<br />
7) Return a surface containing the image data corresponding to the texture's contents.<br />
<br />
sdl::ttexture already implements 1 and 6. SDL provides functionality for 2-5, but not necessarily through separate functions; for that reason, the parameters will need to be stored for rotate, scale and flip to be later passed to SDL_RenderCopyEx.<br />
<br />
I'd prefer the texture to remember which renderer it's attached to and put the render function into ttexture instead of twindow. This way it's impossible that the user will ever try to render a texture with the wrong renderer.<br />
<br />
ttexture will also have to store the dimensions of the image because that needs to be passed to SDL_RenderCopy (the texture is stretched to the window's size otherwise).<br />
<br />
<br />
Some of the current functionality of sdl_utils can't be (or more precisely shouldn't be) wrapped in ttexture, for example draw_rectangle or draw_solid_tinted_rectangle. These functions will have counterparts providing the same functionality for textures/renderers. A convenience shortcut for rendering text onto a texture instead of drawing it onto a surface then manually converting would be nice, too.<br />
<br />
<br />
When ttexture is complete, we'll have to make sure that other parts of the program can access it through the established codepaths. Loading textures will happen through twindow.<br />
<br />
image.?pp is the other domain which has to be updated. The image cache API need not change too much, but the internals will need some work. The most important change is that with textures lighting, scaling, etc. are all cheap operations so there's no need to flush the caches when for e.g. the zoom factor changes.<br />
<br />
<br />
I think the storyscreen code is the ideal place to first put ttexture in use. It is rather isolated and simple, still it uses a lot of SDL functionality. The major difficulty with the storyscreen is that the surfaces that are blitted on the screen are assembled from many other surfaces. This behavior could be preserved with SDL2 either by using a software renderer or simply sticking to SDL_Surface, but we'd lose hardware acceleration either way (which is especially important here, because story screen background scaling is currently one of the most noticeable performance bottlenecks of Wesnoth). So, the semantics must be changed to render directly on the screen.<br />
<br />
<br />
Last but not least the main interface components, display, game_display and the minimap have to be adjusted. The minimap has the same problem as the storyscreen: it assembles a map image from tiles, and then scales the result. The only difference is that scaling isn't required in any intermediate step, so using a software renderer and then creating a texture from the result could be a viable technique here.<br />
<br />
I couldn't yet read through display and game_display in detail, but from my researches so far their semantics don't need to be changed, provided the texture API implemented so far behaves similarly to the old surface-based code. It'll still require quite some work to adjust all the calls, though.<br />
<br />
When working on display and game_display, I'd like to spare time to write a comprehensive document on these classes to make future modifications easier.<br />
<br />
<br />
In any extra time left, I could work on updating the event handler to support SDL2's textinput API.<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=54375SoC2014 lipkab SDL22014-04-04T08:42:12Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_SDL2]]<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
I propose to help with the SDL2 transition.<br />
<br />
I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
I'm a university student from Budapest, Hungary. I've been an OSS user since my Vista installation committed harakiri somewhen in mid-2009. Although I took a few courses in programming, I'm mostly an autodidact. Besides programming, I like origami, furry animals and pancakes.<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology). Well, in fact, I'm formally a Molecular Bionics student, however, in practice I take CS courses and next year I'll be able to officially switch majors.<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
SDL2 related commits:<br />
* Commits 821b009 to 37c7100: fix mouse wheel for SDL2.<br />
* Commit 7b6c125: sdl2 option for SCons.<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the greater challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
I usually listen to and consider any advice but I tend to be rather insistant on my own ideas.<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my contributions for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I wanted to work on this anyways, getting help and payment for it made it even more appealing.<br />
<br />
'''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".'''<br />
<br />
{| class="wikitable"<br />
|-<br />
!Week<br />
!Task<br />
!Notes<br />
|-<br />
| 1<br />
| Working on ttexture<br />
| I'll have exams during this period<br />
|-<br />
| 2<br />
| Finish ttexture and add texture siblings for any function in sdl_utils that doesn't have an equivalent in ttexture<br />
| I'll have exams during this period<br />
|-<br />
| 3<br />
| Add texture loading to twindow (if it's not yet be there by then), start converting the image cache<br />
| No more exams! (I hope)<br />
|-<br />
| 4<br />
| Finish converting the image cache, and do a lot of testing<br />
| If both I and a spritesheet student get accepted, we might have some interference at this part<br />
|-<br />
| 5<br />
| Start working on the storyscreen. Plan the conversion (semantical changes might be necessary, see below), start implementation<br />
|<br />
|-<br />
| 6<br />
| Finish the storyscreen.<br />
| Since this will be the first occasion to put ttexture into use, I expect that these two weeks will include some bugfixing as well<br />
|-<br />
| 7<br />
| Plan the conversion for display and game_display. Convert the minimap<br />
|<br />
|-<br />
| 8<br />
| Change function calls in display and game display to use textures instead of surfaces, make it compile<br />
|<br />
|-<br />
| 9<br />
| Fix any problems with dispay and game_display<br />
|<br />
|-<br />
| 10<br />
| Write documentation for display & game_display<br />
|<br />
|-<br />
| 11<br />
| Buffer for delays OR start planning the conversion for the textinput API. <br />
|<br />
|-<br />
| 12<br />
| Convert GUI1 and GUI2 to use the textinput API<br />
|<br />
|}<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first task and one of the cornerstones of the project is a wrapper class for SDL_Texture. This class should encapsulate all functionality related to rendering and manipulating textures. The following functions are required:<br />
<br />
1) Load a texture from a file.<br />
2) Rotate the texture.<br />
3) Scale the texture with a given algorithm (BI or NPS).<br />
4) Flip the texture.<br />
5) Set alpha or color blend.<br />
6) Render the texture.<br />
7) Return a surface containing the image data corresponding to the texture's contents.<br />
<br />
sdl::ttexture already implements 1 and 6. SDL provides functionality for 2-5, but not necessarily through separate functions; for that reason, the parameters will need to be stored for rotate, scale and flip to be later passed to SDL_RenderCopyEx.<br />
<br />
I'd prefer the texture to remember which renderer it's attached to and put the render function into ttexture instead of twindow. This way it's impossible that the user will ever try to render a texture with the wrong renderer.<br />
<br />
ttexture will also have to store the dimensions of the image because that needs to be passed to SDL_RenderCopy (the texture is stretched to the window's size otherwise).<br />
<br />
<br />
Some of the current functionality of sdl_utils can't be (or more precisely shouldn't be) wrapped in ttexture, for example draw_rectangle or draw_solid_tinted_rectangle. These functions will have counterparts providing the same functionality for textures/renderers. A convenience shortcut for rendering text onto a texture instead of drawing it onto a surface then manually converting would be nice, too.<br />
<br />
<br />
When ttexture is complete, we'll have to make sure that other parts of the program can access it through the established codepaths. Loading textures will happen through twindow.<br />
<br />
image.?pp is the other domain which has to be updated. The image cache API need not change too much, but the internals will need some work. The most important change is that with textures lighting, scaling, etc. are all cheap operations so there's no need to flush the caches when for e.g. the zoom factor changes.<br />
<br />
<br />
I think the storyscreen code is the ideal place to first put ttexture in use. It is rather isolated and simple, still it uses a lot of SDL functionality. The major difficulty with the storyscreen is that the surfaces that are blitted on the screen are assembled from many other surfaces. This behavior could be preserved with SDL2 either by using a software renderer or simply sticking to SDL_Surface, but we'd lose hardware acceleration either way (which is especially important here, because story screen background scaling is currently one of the most noticeable performance bottlenecks of Wesnoth). So, the semantics must be changed to render directly on the screen.<br />
<br />
<br />
Last but not least the main interface components, display, game_display and the minimap have to be adjusted. The minimap has the same problem as the storyscreen: it assembles a map image from tiles, and then scales the result. The only difference is that scaling isn't required in any intermediate step, so using a software renderer and then creating a texture from the result could be a viable technique here.<br />
<br />
I couldn't yet read through display and game_display in detail, but from my researches so far their semantics don't need to be changed, provided the texture API implemented so far behaves similarly to the old surface-based code. It'll still require quite some work to adjust all the calls, though.<br />
<br />
When working on display and game_display, I'd like to spare time to write a comprehensive document on these classes to make future modifications easier.<br />
<br />
<br />
In any extra time left, I could work on updating the event handler to support SDL2's textinput API.<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=54374SoC2014 lipkab SDL22014-04-04T08:41:46Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_SDL2]]<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
I propose to help with the SDL2 transition.<br />
<br />
I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
I'm a university student from Budapest, Hungary. I've been an OSS user since my Vista installation committed harakiri somewhen in mid-2009. Although I took a few courses in programming, I'm mostly an autodidact. Besides programming, I like origami, furry animals and pancakes.<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology). Well, in fact, I'm formally a Molecular Bionics student, however, in practice I take CS courses and next year I'll be able to officially switch majors.<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
SDL2 related commits:<br />
* Commits 821b009 to 37c7100: fix mouse wheel for SDL2.<br />
* Commit 7b6c125: sdl2 option for SCons.<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the greater challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
I usually listen to and consider any advice but I tend to be rather insistant on my own ideas.<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my contributions for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I wanted to work on this anyways, getting help and payment for it made it even more appealing.<br />
<br />
'''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".'''<br />
<br />
{| class="wikitable"<br />
|-<br />
!Week<br />
!Task<br />
!Notes<br />
|-<br />
| 1<br />
| Working on ttexture<br />
| I'll have exams during this period<br />
|-<br />
| 2<br />
| Finish ttexture and add texture siblings for any function in sdl_utils that doesn't have an equivalent in ttexture<br />
| I'll have exams during this period<br />
|-<br />
| 3<br />
| Add texture loading to twindow (if it's not yet be there by then), start converting the image cache<br />
| No more exams! (I hope)<br />
|-<br />
| 4<br />
| Finish converting the image cache, and do a lot of testing<br />
| If both I and a spritesheet student get accepted, we might have some interference at this part<br />
|-<br />
| 5<br />
| Start working on the storyscreen. Plan the conversion (semantical changes might be necessary, see below), start implementation<br />
|<br />
|-<br />
| 6<br />
| Finish the storyscreen.<br />
| Since this will be the first occasion to put ttexture into use, I expect that these two weeks will include some bugfixing as well<br />
|-<br />
| 7<br />
| Plan the conversion for display and game_display. Convert the minimap<br />
|<br />
|-<br />
| 8<br />
| Change function calls in display and game display to use textures instead of surfaces, make it compile<br />
|<br />
|-<br />
| 9<br />
| Fix any problems with dispay and game_display<br />
|<br />
|-<br />
| 10<br />
| Write documentation for display & game_display<br />
|<br />
|-<br />
| 11<br />
| Buffer for delays OR start planning the conversion for the textinput API. <br />
|<br />
|-<br />
| 12<br />
| Convert GUI1 and GUI2 to use the textinput API<br />
|<br />
}<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first task and one of the cornerstones of the project is a wrapper class for SDL_Texture. This class should encapsulate all functionality related to rendering and manipulating textures. The following functions are required:<br />
<br />
1) Load a texture from a file.<br />
2) Rotate the texture.<br />
3) Scale the texture with a given algorithm (BI or NPS).<br />
4) Flip the texture.<br />
5) Set alpha or color blend.<br />
6) Render the texture.<br />
7) Return a surface containing the image data corresponding to the texture's contents.<br />
<br />
sdl::ttexture already implements 1 and 6. SDL provides functionality for 2-5, but not necessarily through separate functions; for that reason, the parameters will need to be stored for rotate, scale and flip to be later passed to SDL_RenderCopyEx.<br />
<br />
I'd prefer the texture to remember which renderer it's attached to and put the render function into ttexture instead of twindow. This way it's impossible that the user will ever try to render a texture with the wrong renderer.<br />
<br />
ttexture will also have to store the dimensions of the image because that needs to be passed to SDL_RenderCopy (the texture is stretched to the window's size otherwise).<br />
<br />
<br />
Some of the current functionality of sdl_utils can't be (or more precisely shouldn't be) wrapped in ttexture, for example draw_rectangle or draw_solid_tinted_rectangle. These functions will have counterparts providing the same functionality for textures/renderers. A convenience shortcut for rendering text onto a texture instead of drawing it onto a surface then manually converting would be nice, too.<br />
<br />
<br />
When ttexture is complete, we'll have to make sure that other parts of the program can access it through the established codepaths. Loading textures will happen through twindow.<br />
<br />
image.?pp is the other domain which has to be updated. The image cache API need not change too much, but the internals will need some work. The most important change is that with textures lighting, scaling, etc. are all cheap operations so there's no need to flush the caches when for e.g. the zoom factor changes.<br />
<br />
<br />
I think the storyscreen code is the ideal place to first put ttexture in use. It is rather isolated and simple, still it uses a lot of SDL functionality. The major difficulty with the storyscreen is that the surfaces that are blitted on the screen are assembled from many other surfaces. This behavior could be preserved with SDL2 either by using a software renderer or simply sticking to SDL_Surface, but we'd lose hardware acceleration either way (which is especially important here, because story screen background scaling is currently one of the most noticeable performance bottlenecks of Wesnoth). So, the semantics must be changed to render directly on the screen.<br />
<br />
<br />
Last but not least the main interface components, display, game_display and the minimap have to be adjusted. The minimap has the same problem as the storyscreen: it assembles a map image from tiles, and then scales the result. The only difference is that scaling isn't required in any intermediate step, so using a software renderer and then creating a texture from the result could be a viable technique here.<br />
<br />
I couldn't yet read through display and game_display in detail, but from my researches so far their semantics don't need to be changed, provided the texture API implemented so far behaves similarly to the old surface-based code. It'll still require quite some work to adjust all the calls, though.<br />
<br />
When working on display and game_display, I'd like to spare time to write a comprehensive document on these classes to make future modifications easier.<br />
<br />
<br />
In any extra time left, I could work on updating the event handler to support SDL2's textinput API.<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=54373SoC2014 lipkab SDL22014-04-04T08:40:18Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_SDL2]]<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
I propose to help with the SDL2 transition.<br />
<br />
I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
I'm a university student from Budapest, Hungary. I've been an OSS user since my Vista installation committed harakiri somewhen in mid-2009. Although I took a few courses in programming, I'm mostly an autodidact. Besides programming, I like origami, furry animals and pancakes.<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology). Well, in fact, I'm formally a Molecular Bionics student, however, in practice I take CS courses and next year I'll be able to officially switch majors.<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
SDL2 related commits:<br />
* Commits 821b009 to 37c7100: fix mouse wheel for SDL2.<br />
* Commit 7b6c125: sdl2 option for SCons.<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the greater challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
I usually listen to and consider any advice but I tend to be rather insistant on my own ideas.<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my contributions for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I wanted to work on this anyways, getting help and payment for it made it even more appealing.<br />
<br />
'''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".'''<br />
<br />
{| class="wikitable"<br />
|-<br />
!Week<br />
!Task<br />
!Notes<br />
|-<br />
| 1<br />
| Working on ttexture<br />
| I'll have exams during this period<br />
|-<br />
| 2<br />
| Finish ttexture and add texture siblings for any function in sdl_utils that doesn't have an equivalent in ttexture<br />
| I'll have exams during this period.<br />
|-<br />
| 3<br />
| Add texture loading to twindow (if it's not yet be there by then), start converting the image cache<br />
| No more exams! (I hope)<br />
|-<br />
| 4<br />
| Finish converting the image cache, and do a lot of testing<br />
| If both I and a spritesheet student get accepted, we might have some interference with this part<br />
|-<br />
| 5<br />
| Start working with the storyscreen. Plan the conversion (semantical changes might be necessary, see below), start implementation<br />
|<br />
|-<br />
| 6<br />
| Finish the storyscreen.<br />
| Since this will be the first occasion to put ttexture into use, I expect that these two weeks will include some bugfixing as well<br />
|-<br />
| 7<br />
| Plan the conversion for display and game_display. Convert the minimap<br />
|<br />
|-<br />
| 8<br />
| Change function calls in display and game display to use textures instead of surfaces, make it compile<br />
|<br />
|-<br />
| 9<br />
| Fix any problems with dispay and game_display<br />
|<br />
|-<br />
| 10<br />
| Write documentation for display & game_display<br />
|<br />
|-<br />
| 11<br />
| Buffer for delays OR start planning the conversion for the textinput API. <br />
|<br />
|-<br />
| 12<br />
| Convert GUI1 and GUI2 to use the textinput API<br />
|<br />
The exam period starts about the same time for me as GSoC, so I won't be able to dedicate my full capacity to Wesnoth in the first ~2 weeks. This time should be enough, though, to implement the texture wrapper class.<br />
<br />
3rd week: second task (see below).<br />
<br />
4-5th weeks: third task.<br />
<br />
6-8th weeks: fourth task.<br />
<br />
9th week: fixing bugs accumulated so far, writing documentation.<br />
<br />
10-12th weeks: Working on extra stuff (text input, GUI1, GUI2), buffer for delays.<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first task and one of the cornerstones of the project is a wrapper class for SDL_Texture. This class should encapsulate all functionality related to rendering and manipulating textures. The following functions are required:<br />
<br />
1) Load a texture from a file.<br />
2) Rotate the texture.<br />
3) Scale the texture with a given algorithm (BI or NPS).<br />
4) Flip the texture.<br />
5) Set alpha or color blend.<br />
6) Render the texture.<br />
7) Return a surface containing the image data corresponding to the texture's contents.<br />
<br />
sdl::ttexture already implements 1 and 6. SDL provides functionality for 2-5, but not necessarily through separate functions; for that reason, the parameters will need to be stored for rotate, scale and flip to be later passed to SDL_RenderCopyEx.<br />
<br />
I'd prefer the texture to remember which renderer it's attached to and put the render function into ttexture instead of twindow. This way it's impossible that the user will ever try to render a texture with the wrong renderer.<br />
<br />
ttexture will also have to store the dimensions of the image because that needs to be passed to SDL_RenderCopy (the texture is stretched to the window's size otherwise).<br />
<br />
<br />
Some of the current functionality of sdl_utils can't be (or more precisely shouldn't be) wrapped in ttexture, for example draw_rectangle or draw_solid_tinted_rectangle. These functions will have counterparts providing the same functionality for textures/renderers. A convenience shortcut for rendering text onto a texture instead of drawing it onto a surface then manually converting would be nice, too.<br />
<br />
<br />
When ttexture is complete, we'll have to make sure that other parts of the program can access it through the established codepaths. Loading textures will happen through twindow.<br />
<br />
image.?pp is the other domain which has to be updated. The image cache API need not change too much, but the internals will need some work. The most important change is that with textures lighting, scaling, etc. are all cheap operations so there's no need to flush the caches when for e.g. the zoom factor changes.<br />
<br />
<br />
I think the storyscreen code is the ideal place to first put ttexture in use. It is rather isolated and simple, still it uses a lot of SDL functionality. The major difficulty with the storyscreen is that the surfaces that are blitted on the screen are assembled from many other surfaces. This behavior could be preserved with SDL2 either by using a software renderer or simply sticking to SDL_Surface, but we'd lose hardware acceleration either way (which is especially important here, because story screen background scaling is currently one of the most noticeable performance bottlenecks of Wesnoth). So, the semantics must be changed to render directly on the screen.<br />
<br />
<br />
Last but not least the main interface components, display, game_display and the minimap have to be adjusted. The minimap has the same problem as the storyscreen: it assembles a map image from tiles, and then scales the result. The only difference is that scaling isn't required in any intermediate step, so using a software renderer and then creating a texture from the result could be a viable technique here.<br />
<br />
I couldn't yet read through display and game_display in detail, but from my researches so far their semantics don't need to be changed, provided the texture API implemented so far behaves similarly to the old surface-based code. It'll still require quite some work to adjust all the calls, though.<br />
<br />
When working on display and game_display, I'd like to spare time to write a comprehensive document on these classes to make future modifications easier.<br />
<br />
<br />
In any extra time left, I could work on updating the event handler to support SDL2's textinput API.<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=54371SoC2014 lipkab SDL22014-04-04T08:16:13Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_SDL2]]<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
I propose to help with the SDL2 transition.<br />
<br />
I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
I'm a university student from Budapest, Hungary. I've been an OSS user since my Vista installation committed harakiri somewhen in mid-2009. Although I took a few courses in programming, I'm mostly an autodidact. Besides programming, I like origami, furry animals and pancakes.<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology). Well, in fact, I'm formally a Molecular Bionics student, however, in practice I take CS courses and next year I'll be able to officially switch majors.<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
SDL2 related commits:<br />
* Commits 821b009 to 37c7100: fix mouse wheel for SDL2.<br />
* Commit 7b6c125: sdl2 option for SCons.<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the greater challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
I usually listen to and consider any advice but I tend to be rather insistant on my own ideas.<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my contributions for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I wanted to work on this anyways, getting help and payment for it made it even more appealing.<br />
<br />
'''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".'''<br />
<br />
The exam period starts about the same time for me as GSoC, so I won't be able to dedicate my full capacity to Wesnoth in the first ~2 weeks. This time should be enough, though, to implement the texture wrapper class.<br />
<br />
3rd week: second task (see below).<br />
<br />
4-5th weeks: third task.<br />
<br />
6-8th weeks: fourth task.<br />
<br />
9th week: fixing bugs accumulated so far, writing documentation.<br />
<br />
10-12th weeks: Working on extra stuff (text input, GUI1, GUI2), buffer for delays.<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first task and one of the cornerstones of the project is a wrapper class for SDL_Texture. This class should encapsulate all functionality related to rendering and manipulating textures. The following functions are required:<br />
<br />
1) Load a texture from a file.<br />
2) Rotate the texture.<br />
3) Scale the texture with a given algorithm (BI or NPS).<br />
4) Flip the texture.<br />
5) Set alpha or color blend.<br />
6) Render the texture.<br />
7) Return a surface containing the image data corresponding to the texture's contents.<br />
<br />
sdl::ttexture already implements 1 and 6. SDL provides functionality for 2-5, but not necessarily through separate functions; for that reason, the parameters will need to be stored for rotate, scale and flip to be later passed to SDL_RenderCopyEx.<br />
<br />
I'd prefer the texture to remember which renderer it's attached to and put the render function into ttexture instead of twindow. This way it's impossible that the user will ever try to render a texture with the wrong renderer.<br />
<br />
ttexture will also have to store the dimensions of the image because that needs to be passed to SDL_RenderCopy (the texture is stretched to the window's size otherwise).<br />
<br />
<br />
Some of the current functionality of sdl_utils can't be (or more precisely shouldn't be) wrapped in ttexture, for example draw_rectangle or draw_solid_tinted_rectangle. These functions will have counterparts providing the same functionality for textures/renderers.<br />
<br />
<br />
When ttexture is complete, we'll have to make sure that other parts of the program can access it through the established codepaths. Loading textures will happen through twindow.<br />
<br />
image.?pp is the other domain which has to be updated. The image cache API need not change too much, but the internals will need some work. The most important change is that with textures lighting, scaling, etc. are all cheap operations so there's no need to flush the caches when for e.g. the zoom factor changes.<br />
<br />
<br />
I think the storyscreen code is the ideal place to first put ttexture in use. It is rather isolated and simple, still it uses a lot of SDL functionality. The major difficulty with the storyscreen is that the surfaces that are blitted on the screen are assembled from many other surfaces. This behavior could be preserved with SDL2 either by using a software renderer or simply sticking to SDL_Surface, but we'd lose hardware acceleration either way (which is especially important here, because story screen background scaling is currently one of the most noticeable performance bottlenecks of Wesnoth). So, the semantics must be changed to render directly on the screen.<br />
<br />
<br />
Last but not least the main interface components, display, game_display and the minimap have to be adjusted. The minimap has the same problem as the storyscreen: it assembles a map image from tiles, and then scales the result. The only difference is that scaling isn't required in any intermediate step, so using a software renderer and then creating a texture from the result could be a viable technique here.<br />
<br />
I couldn't yet read through display and game_display in detail, but from my researches so far their semantics don't need to be changed, provided the texture API implemented so far behaves similarly to the old surface-based code. It'll still require quite some work to adjust all the calls, though.<br />
<br />
When working on display and game_display, I'd like to spare time to write a comprehensive document on these classes to make future modifications easier.<br />
<br />
<br />
In any extra time left, I could work on updating the event handler to support SDL2's textinput API.<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53986SoC2014 lipkab SDL22014-03-19T12:59:27Z<p>Lipk: /* Questionnaire */</p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_SDL2]]<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
I propose to help with the SDL2 transition.<br />
<br />
I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
I'm a university student from Budapest, Hungary. I've been an OSS user since my Vista installation committed harakiri somewhen in mid-2009. Although I took a few courses in programming, I'm mostly an autodidact. Besides programming, I like origami, furry animals and pancakes.<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology). Well, in fact, I'm formally a Molecular Bionics student, however, in practice I take CS courses and next year I'll be able to officially switch majors.<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
SDL2 related commits:<br />
* Commits 821b009 to 37c7100: fix mouse wheel for SDL2.<br />
* Commit 7b6c125: sdl2 option for SCons.<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the greater challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
I usually listen to and consider any advice but I tend to be rather insistant on my own ideas.<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my contributions for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I wanted to work on this anyways, getting help and payment for it made it even more appealing.<br />
<br />
'''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".'''<br />
<br />
The exam period starts about the same time for me as GSoC, so I won't be able to dedicate my full capacity to Wesnoth in the first ~2 weeks. This time should be enough, though, to implement the texture wrapper class.<br />
<br />
3rd week: second task (see below).<br />
<br />
4-5th weeks: third task.<br />
<br />
6-8th weeks: fourth task.<br />
<br />
9th week: fixing bugs accumulated so far, writing documentation.<br />
<br />
10-12th weeks: Working on extra stuff (text input, GUI1, GUI2), buffer for delays.<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first step of the project is to implement a wrapper class for SDL_Texture, which supports rotating, clipping and scaling the object. Since these operations (SDL_RenderCopyEx, SDL_SetScale) don't require the actual texture data to be modified in any way, multiple instances of the texture class can share a single SDL_Texture. A texture's pixels can't be accessed directly, thus we may also want to keep a copy of the surface the texture was created from in the class, in case a modified image is needed later.<br />
<br />
The second task is to enable access to hardware accelerated facilities through the usual codepaths. This includes an SDL_Renderer available through CVideo and texture loading via the image class. Both changes should be straightforward.<br />
<br />
The third task is to deploy the texture class in the storyscreen code. The storyscreen's implementation is relatively self-contained and well documented so it's an ideal place to try out new features. Furthermore, it involves scaling large pictures which is currently one of the performance bottlenecks of Wesnoth and hopefully will be resolved by enabling hardware acceleration.<br />
<br />
game and game_display will need to be updated for textures as well. I believe this doesn't require any major refactoring (texture-based rendering does support partial redrawing), but I'll need to get that confirmed.<br />
<br />
It's possible I'll finish these tasks before Autumn (especially since mordante already started working on some of them - I could really make use of a status update here!). If this happens, I can continue with porting GUI1/GUI2 to textures or updating the event handling system. The current issues with the latter are keyboard and window resize events - the former will need to use the text input API in the future and the latter results in occasional segfaults as of now.<br />
<br />
While I'm at it, I'd like to improve the documentation of the rendering system as well. (The storyscreen code is very well documented).<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53985SoC2014 lipkab SDL22014-03-19T12:55:50Z<p>Lipk: /* Questionnaire */</p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_SDL2]]<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
I propose to help with the SDL2 transition.<br />
<br />
I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
I'm a university student from Budapest, Hungary. I've been an OSS user since my Vista installation committed harakiri somewhen in mid-2009. Although I took a few courses in programming, I'm mostly an autodidact. Besides programming, I like origami, furry animals and pancakes.<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology). Well, in fact, I'm formally a Molecular Bionics student, however, in practice I take CS courses and next year I'll be able to officially switch majors.<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
SDL2 related commits:<br />
* Commits 821b009 to 37c7100: fix mouse wheel for SDL2.<br />
* Commit 7b6c125: sdl2 option for SCons.<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the greater challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
I usually listen to and consider any advice but I tend to be rather insistant on my own ideas.<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my contributions for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I wanted to work on this anyways, getting help and payment for it made it even more appealing.<br />
<br />
'''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".'''<br />
<br />
The exam period starts about the same time for me as GSoC, so I won't be able to dedicate my full capacity to Wesnoth in the first ~2 weeks. This time should be enough, though, to implement the texture wrapper class.<br />
<br />
3rd week: second task (see below).<br />
<br />
4-5th weeks: third task.<br />
<br />
6-8th weeks: fourth task.<br />
<br />
9th week: fixing bugs accumulated so far, writing documentation.<br />
<br />
10-12th weeks: Working on extra stuff (text input, GUI1, GUI2), buffer for delays.<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first step of the project is to implement a wrapper class for SDL_Texture, which supports rotating, clipping and scaling the object. Since these operations (SDL_RenderCopyEx, SDL_SetScale) don't require the actual texture data to be modified in any way, multiple instances of the texture class can share a single SDL_Texture. A texture's pixels can't be accessed directly, thus we may also want to keep a copy of the surface the texture was created from in the class, in case a modified image is needed later.<br />
<br />
The second task is to enable access to hardware accelerated facilities through the usual global objects. This includes an SDL_Renderer available through CVideo and texture loading via the image class. Both changes should be straightforward.<br />
<br />
The third task is to deploy the texture class in the storyscreen code. The storyscreen's implementation is relatively self-contained and well documented so it's an ideal place to try out new features. Furthermore, it involves scaling large pictures which is currently one of the performance bottlenecks of Wesnoth and hopefully will be resolved by enabling hardware acceleration.<br />
<br />
game and game_display will need to be updated for textures as well. I believe this doesn't require any major refactoring (texture-based rendering does support partial redrawing), but I'll need to get that confirmed.<br />
<br />
It's possible I'll finish these tasks before Autumn (especially since mordante already started working on some of them - I could really make use of a status update here!). If this happens, I can continue with porting GUI1/GUI2 to textures or updating the event handling system. The current issues with the latter are keyboard and window resize events - the former will need to use the text input API in the future and the latter results in occasional segfaults as of now.<br />
<br />
While I'm at it, I'd like to improve the documentation of the rendering system as well. (The storyscreen code is very well documented).<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53972SoC2014 lipkab SDL22014-03-18T20:23:31Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_SDL2]]<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
I propose to help with the SDL2 transition.<br />
<br />
I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
I'm a university student from Budapest, Hungary. I've been an OSS user since my Vista installation committed harakiri somewhen in mid-2009. Although I took a few courses in programming, I'm mostly an autodidact. Besides programming, I like origami, furry animals and pancakes.<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology). Well, in fact, I'm formally a Molecular Bionics student, however, in practice I take CS courses and next year I'll be able to officially switch majors.<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the greater challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
I usually listen to and consider any advice but I tend to be rather insistant on my own ideas.<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my contributions for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I've been playing with the idea of porting Wesnoth to SDL2 for a long time. ...<br />
<br />
'''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".'''<br />
<br />
The exam period starts about the same time for me as GSoC, so I won't be able to dedicate my full capacity to Wesnoth in the first ~2 weeks. This time should be enough, though, to implement the texture wrapper class.<br />
<br />
3rd week: second task (see below).<br />
<br />
4-5th weeks: third task.<br />
<br />
6-8th weeks: fourth task.<br />
<br />
9th week: fixing bugs accumulated so far, writing documentation.<br />
<br />
10-12th weeks: Working on extra stuff (text input, GUI1, GUI2), buffer for delays.<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first step of the project is to implement a wrapper class for SDL_Texture, which supports rotating, clipping and scaling the object. Since these operations (SDL_RenderCopyEx, SDL_SetScale) don't require the actual texture data to be modified in any way, multiple instances of the texture class can share a single SDL_Texture. A texture's pixels can't be accessed directly, thus we may also want to keep a copy of the surface the texture was created from in the class, in case a modified image is needed later.<br />
<br />
The second task is to enable access to hardware accelerated facilities through the usual global objects. This includes an SDL_Renderer available through CVideo and texture loading via the image class. Both changes should be straightforward.<br />
<br />
The third task is to deploy the texture class in the storyscreen code. The storyscreen's implementation is relatively self-contained and well documented so it's an ideal place to try out new features. Furthermore, it involves scaling large pictures which is currently one of the performance bottlenecks of Wesnoth and hopefully will be resolved by enabling hardware acceleration.<br />
<br />
game and game_display will need to be updated for textures as well. I believe this doesn't require any major refactoring (texture-based rendering does support partial redrawing), but I'll need to get that confirmed.<br />
<br />
It's possible I'll finish these tasks before Autumn (especially since mordante already started working on some of them - I could really make use of a status update here!). If this happens, I can continue with porting GUI1/GUI2 to textures or updating the event handling system. The current issues with the latter are keyboard and window resize events - the former will need to use the text input API in the future and the latter results in occasional segfaults as of now.<br />
<br />
While I'm at it, I'd like to improve the documentation of the rendering system as well. (The storyscreen code is very well documented).<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53675SoC2014 lipkab SDL22014-03-12T11:54:01Z<p>Lipk: /* Questionnaire */</p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_Your_Own_Ideas2014]]<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
I propose to help with the SDL2 transition.<br />
<br />
I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology). Well, in fact, I'm formally a Molecular Bionics student, however, in practice I take CS courses and next year I'll be able to officially switch majors.<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the greater challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
I usually listen to and consider any advice but I tend to be rather insistant on my own ideas.<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my contributions for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I've been playing with the idea of porting Wesnoth to SDL2 for a long time. ...<br />
<br />
'''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".'''<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first step of the project is to implement a wrapper class for SDL_Texture, which supports rotating, clipping and scaling the object. Since these operations (SDL_RenderCopyEx, SDL_SetScale) don't require the actual texture data to be modified in any way, multiple instances of the texture class can share a single SDL_Texture. A texture's pixels can't be accessed directly, thus we may also want to keep a copy of the surface the texture was created from in the class, in case a modified image is needed later.<br />
<br />
The second task is to enable access to hardware accelerated facilities through the usual global objects. This includes an SDL_Renderer available through CVideo and texture loading via the image class. Both changes should be straightforward.<br />
<br />
The third task is to deploy the texture class in the storyscreen code. The storyscreen's implementation is relatively self-contained and well documented so it's an ideal place to try out new features. Furthermore, it involves scaling large pictures which is currently one of the performance bottlenecks of Wesnoth and hopefully will be resolved by enabling hardware acceleration.<br />
<br />
TODO: write something on display and game_display.<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53600SoC2014 lipkab SDL22014-03-11T12:42:21Z<p>Lipk: /* Questionnaire */</p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_Your_Own_Ideas2014]]<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
I propose to help with the SDL2 transition.<br />
<br />
I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level, I'd say.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the bigger challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I've been playing with the idea of porting Wesnoth to SDL2 for a long time. ...<br />
<br />
'''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".'''<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first step of the project is to implement a wrapper class for SDL_Texture, which supports rotating, clipping and scaling the object. Since these operations (SDL_RenderCopyEx, SDL_SetScale) don't require the actual texture data to be modified in any way, multiple instances of the texture class can share a single SDL_Texture. A texture's pixels can't be accessed directly, thus we may also want to keep a copy of the surface the texture was created from in the class, in case a modified image is needed later.<br />
<br />
The second task is to enable access to hardware accelerated facilities through the usual global objects. This includes an SDL_Renderer available through CVideo and texture loading via the image class. Both changes should be straightforward.<br />
<br />
The third task is to deploy the texture class in the storyscreen code. The storyscreen's implementation is relatively self-contained and well documented so it's an ideal place to try out new features. Furthermore, it involves scaling large pictures which is currently one of the performance bottlenecks of Wesnoth and hopefully will be resolved by enabling hardware acceleration.<br />
<br />
TODO: write something on display and game_display.<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53599SoC2014 lipkab SDL22014-03-11T12:35:20Z<p>Lipk: /* ATTENTION */</p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_Your_Own_Ideas2014]]<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
I propose to help with the SDL2 transition.<br />
<br />
I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level, I'd say.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the bigger challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I've been playing with the idea of porting Wesnoth to SDL2 for a long time. ...<br />
<br />
'''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".'''<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first step of the project is to implement a wrapper class for SDL_Texture, which supports rotating, clipping and scaling the object. Since these operations (SDL_RenderCopyEx, SDL_SetScale) don't require the actual texture to be modified in any way, multiple instances of the texture class can share a single SDL_Texture. Since a texture's pixels can't be accessed directly, we may also want to keep a copy of the surface the texture was created from in the class, in case a modified image is needed later.<br />
<br />
The second task is to enable access to hardware accelerated facilities through the usual global objects. This includes an SDL_Renderer available through CVideo and texture loading via the image class. Both changes should be straightforward.<br />
<br />
The third task is to deploy the texture class in the storyscreen code. The storyscreen's implementation is relatively self-contained and well documented so it's an ideal place to try out new features. Furthermore, it involves scaling large pictures which is currently one of the performance bottlenecks of Wesnoth and hopefully will be resolved by enabling hardware acceleration.<br />
<br />
<br />
<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53598SoC2014 lipkab SDL22014-03-11T12:35:04Z<p>Lipk: /* Description */</p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_Your_Own_Ideas2014]]<br />
<br />
=ATTENTION=<br />
'''THIS PAGE IS NOT YET FINISHED!!!'''<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
I propose to help with the SDL2 transition.<br />
<br />
I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level, I'd say.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the bigger challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I've been playing with the idea of porting Wesnoth to SDL2 for a long time. ...<br />
<br />
'''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".'''<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first step of the project is to implement a wrapper class for SDL_Texture, which supports rotating, clipping and scaling the object. Since these operations (SDL_RenderCopyEx, SDL_SetScale) don't require the actual texture to be modified in any way, multiple instances of the texture class can share a single SDL_Texture. Since a texture's pixels can't be accessed directly, we may also want to keep a copy of the surface the texture was created from in the class, in case a modified image is needed later.<br />
<br />
The second task is to enable access to hardware accelerated facilities through the usual global objects. This includes an SDL_Renderer available through CVideo and texture loading via the image class. Both changes should be straightforward.<br />
<br />
The third task is to deploy the texture class in the storyscreen code. The storyscreen's implementation is relatively self-contained and well documented so it's an ideal place to try out new features. Furthermore, it involves scaling large pictures which is currently one of the performance bottlenecks of Wesnoth and hopefully will be resolved by enabling hardware acceleration.<br />
<br />
<br />
<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53564SoC2014 lipkab SDL22014-03-11T10:19:30Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_Your_Own_Ideas2014]]<br />
<br />
=ATTENTION=<br />
'''THIS PAGE IS NOT YET FINISHED!!!'''<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
TODO: Write a small (1-4 sentences) description of your proposal here.<br />
<br />
TODO: Add more first-level sections to detail your proposal<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level, I'd say.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the bigger challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I've been playing with the idea of porting Wesnoth to SDL2 for a long time. ...<br />
<br />
'''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".'''<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
The first step of the project is to implement a wrapper class for SDL_Texture, which supports rotating, clipping and scaling the object. Since these operations (SDL_RenderCopyEx, SDL_SetScale) don't require the actual texture to be modified in any way, multiple instances of the texture class can share a single SDL_Texture. Since a texture's pixels can't be accessed directly, we may also want to keep a copy of the surface the texture was created from in the class, in case a modified image is needed later.<br />
<br />
The second task is to enable access to hardware accelerated facilities through the usual global objects. This includes an SDL_Renderer available through CVideo and texture loading via the image class. Both changes should be straightforward.<br />
<br />
The third task is to deploy the texture class in the storyscreen code. The storyscreen's implementation is relatively self-contained and well documented so it's an ideal place to try out new features. Furthermore, it involves scaling large pictures which is currently one of the performance bottlenecks of Wesnoth and hopefully will be resolved by enabling hardware acceleration.<br />
<br />
<br />
<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53542SoC2014 lipkab SDL22014-03-10T07:00:35Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_Your_Own_Ideas2014]]<br />
<br />
=ATTENTION=<br />
'''THIS PAGE IS NOT YET FINISHED!!!'''<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
TODO: Write a small (1-4 sentences) description of your proposal here.<br />
<br />
TODO: Add more first-level sections to detail your proposal<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level, I'd say.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the bigger challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
I've been playing with the idea of porting Wesnoth to SDL2 for a long time. ...<br />
<br />
'''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".'''<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC, so I don't expect it to end with it.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''at a basic level only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53537SoC2014 lipkab SDL22014-03-09T12:04:48Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_Your_Own_Ideas2014]]<br />
<br />
=ATTENTION=<br />
'''THIS PAGE IS NOT YET FINISHED!!!'''<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
TODO: Write a small (1-4 sentences) description of your proposal here.<br />
<br />
TODO: Add more first-level sections to detail your proposal<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level, I'd say.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the more challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
<br />
<br />
'''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".'''<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) ''yes''<br />
* C++ (language used for all the normal source code) ''yes''<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) ''SDL, STL: yes, Boost: somewhat''<br />
* Python (optional, mainly used for tools) ''basic understanding only''<br />
* build environments (eg cmake/scons) ''yes''<br />
* WML (the wesnoth specific scenario language) ''yes''<br />
* Lua (used in combination with WML to create scenarios) ''yes''<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53535SoC2014 lipkab SDL22014-03-08T22:01:03Z<p>Lipk: /* Questionnaire */</p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_Your_Own_Ideas2014]]<br />
<br />
=ATTENTION=<br />
'''THIS PAGE IS NOT YET FINISHED!!!'''<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
TODO: Write a small (1-4 sentences) description of your proposal here.<br />
<br />
TODO: Add more first-level sections to detail your proposal<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* Do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc at the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level, I'd say.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the more challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
I've chosen the SDL2 transition project. I'd like to concentrate on revamping the rendering system to make use of SDL2's hardware acceleration facilities.<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
-<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
<br />
<br />
'''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".'''<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
My affiliation with Wesnoth didn't begin with GSoC.<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) yes<br />
* C++ (language used for all the normal source code) yes<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) SDL, STL: yes, Boost: somewhat<br />
* Python (optional, mainly used for tools) basic understanding only<br />
* build environments (eg cmake/scons) yes<br />
* WML (the wesnoth specific scenario language) yes<br />
* Lua (used in combination with WML to create scenarios) yes<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53533SoC2014 lipkab SDL22014-03-08T21:25:40Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_Your_Own_Ideas2014]]<br />
<br />
=ATTENTION=<br />
'''THIS PAGE IS NOT YET FINISHED!!!'''<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
TODO: Write a small (1-4 sentences) description of your proposal here.<br />
<br />
TODO: Add more first-level sections to detail your proposal<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* I'd like to do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc on the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level, I'd say.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the more challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
'''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".'''<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
<br />
<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) yes<br />
* C++ (language used for all the normal source code) yes<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) SDL, STL: yes, Boost: somewhat<br />
* Python (optional, mainly used for tools) basic understanding only<br />
* build environments (eg cmake/scons) yes<br />
* WML (the wesnoth specific scenario language) yes<br />
* Lua (used in combination with WML to create scenarios) yes<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53532SoC2014 lipkab SDL22014-03-08T21:25:20Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_Your_Own_Ideas_2014]]<br />
<br />
=ATTENTION=<br />
'''THIS PAGE IS NOT YET FINISHED!!!'''<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
TODO: Write a small (1-4 sentences) description of your proposal here.<br />
<br />
TODO: Add more first-level sections to detail your proposal<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* I'd like to do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc on the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level, I'd say.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the more challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
'''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".'''<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
<br />
<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) yes<br />
* C++ (language used for all the normal source code) yes<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) SDL, STL: yes, Boost: somewhat<br />
* Python (optional, mainly used for tools) basic understanding only<br />
* build environments (eg cmake/scons) yes<br />
* WML (the wesnoth specific scenario language) yes<br />
* Lua (used in combination with WML to create scenarios) yes<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53531SoC2014 lipkab SDL22014-03-08T21:24:23Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_SDL2_2014]]<br />
<br />
=ATTENTION=<br />
'''THIS PAGE IS NOT YET FINISHED!!!'''<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
TODO: Write a small (1-4 sentences) description of your proposal here.<br />
<br />
TODO: Add more first-level sections to detail your proposal<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* I'd like to do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc on the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level, I'd say.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the more challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
'''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".'''<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
<br />
<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) yes<br />
* C++ (language used for all the normal source code) yes<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) SDL, STL: yes, Boost: somewhat<br />
* Python (optional, mainly used for tools) basic understanding only<br />
* build environments (eg cmake/scons) yes<br />
* WML (the wesnoth specific scenario language) yes<br />
* Lua (used in combination with WML to create scenarios) yes<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53530SoC2014 lipkab SDL22014-03-08T21:22:59Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_SDL22014]]<br />
<br />
=ATTENTION=<br />
'''THIS PAGE IS NOT YET FINISHED!!!'''<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
TODO: Write a small (1-4 sentences) description of your proposal here.<br />
<br />
TODO: Add more first-level sections to detail your proposal<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* I'd like to do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc on the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level, I'd say.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the more challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
'''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".'''<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
<br />
<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) yes<br />
* C++ (language used for all the normal source code) yes<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) SDL, STL: yes, Boost: somewhat<br />
* Python (optional, mainly used for tools) basic understanding only<br />
* build environments (eg cmake/scons) yes<br />
* WML (the wesnoth specific scenario language) yes<br />
* Lua (used in combination with WML to create scenarios) yes<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53526SoC2014 lipkab SDL22014-03-08T11:11:16Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_Your_Own_Ideas2014]]<br />
<br />
=ATTENTION=<br />
'''THIS PAGE IS NOT YET FINISHED!!!'''<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
TODO: Write a small (1-4 sentences) description of your proposal here.<br />
<br />
TODO: Add more first-level sections to detail your proposal<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* I'd like to do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc on the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level, I'd say.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the more challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
'''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".'''<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
<br />
<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) yes<br />
* C++ (language used for all the normal source code) yes<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) SDL, STL: yes, Boost: somewhat<br />
* Python (optional, mainly used for tools) basic understanding only<br />
* build environments (eg cmake/scons) yes<br />
* WML (the wesnoth specific scenario language) yes<br />
* Lua (used in combination with WML to create scenarios) yes<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53525SoC2014 lipkab SDL22014-03-08T11:09:38Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_SDL2]]<br />
<br />
=ATTENTION=<br />
'''THIS PAGE IS NOT YET FINISHED!!!'''<br />
<br />
=Description=<br />
<h4>lipkab - SDL2 transition</h4><br />
TODO: Write a small (1-4 sentences) description of your proposal here.<br />
<br />
TODO: Add more first-level sections to detail your proposal<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* I'd like to do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc on the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level, I'd say.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the more challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
'''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".'''<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
<br />
<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) yes<br />
* C++ (language used for all the normal source code) yes<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) SDL, STL: yes, Boost: somewhat<br />
* Python (optional, mainly used for tools) basic understanding only<br />
* build environments (eg cmake/scons) yes<br />
* WML (the wesnoth specific scenario language) yes<br />
* Lua (used in combination with WML to create scenarios) yes<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53524SoC2014 lipkab SDL22014-03-08T11:07:26Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_Your_Own_Ideas2014]]<br />
<br />
=ATTENTION=<br />
'''THIS PAGE IS NOT YET FINISHED!!!'''<br />
<br />
=Description=<br />
<h4>TODO: Copy this page and write "your name - proposal title" in this h4 section </h4><br />
TODO: Write a small (1-4 sentences) description of your proposal here.<br />
<br />
TODO: Add more first-level sections to detail your proposal<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* I'd like to do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc on the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. Some of my favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level, I'd say.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
As above, I mostly play with strategy and puzzle games and there gameplay definitely weighs more than the plot. That being said, I do appreciate an interesting and thoughtful story.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the more challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
'''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".'''<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
<br />
<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) yes<br />
* C++ (language used for all the normal source code) yes<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) SDL, STL: yes, Boost: somewhat<br />
* Python (optional, mainly used for tools) basic understanding only<br />
* build environments (eg cmake/scons) yes<br />
* WML (the wesnoth specific scenario language) yes<br />
* Lua (used in combination with WML to create scenarios) yes<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53523SoC2014 lipkab SDL22014-03-08T11:04:18Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_Your_Own_Ideas2014]]<br />
<br />
=ATTENTION=<br />
'''THIS PAGE IS NOT YET FINISHED!!!'''<br />
<br />
=Description=<br />
<h4>TODO: Copy this page and write "your name - proposal title" in this h4 section </h4><br />
TODO: Write a small (1-4 sentences) description of your proposal here.<br />
<br />
TODO: Add more first-level sections to detail your proposal<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* I'd like to do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc on the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
'''2) Experience'''<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. My (current) favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level, I'd say.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
That depends on game.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the more challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
'''4) Project'''<br />
<br />
'''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?'''<br />
<br />
'''4.2) If you have invented your own project, please describe the project and the scope.'''<br />
<br />
'''4.3) Why did you choose this project?'''<br />
<br />
'''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".'''<br />
<br />
'''4.5) Include as much technical detail about your implementation as you can'''<br />
<br />
'''4.6) What do you expect to gain from this project?'''<br />
<br />
A deeper understanding of both SDL2 and Wesnoth's rendering and event handling system. Plus a T-shirt.<br />
<br />
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''<br />
<br />
<br />
<br />
<br />
'''5) Practical considerations'''<br />
<br />
'''5.1) Are you familiar with any of the following tools or languages?'''<br />
* Git (used for all commits) yes<br />
* C++ (language used for all the normal source code) yes<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth) SDL, STL: yes, Boost: somewhat<br />
* Python (optional, mainly used for tools) basic understanding only<br />
* build environments (eg cmake/scons) yes<br />
* WML (the wesnoth specific scenario language) yes<br />
* Lua (used in combination with WML to create scenarios) yes<br />
<br />
'''5.2) Which tools do you normally use for development? Why do you use them?'''<br />
<br />
I use Vim/GVim for smaller projects because of the almost perfect code completion and error detecting features I can get from YCM (a clang integration plugin). For bigger and/or Qt related stuff I use Qt Creator, which I like in particular for its friendly debugger interface and code navigation capabilities.<br />
<br />
'''5.3) What programming languages are you fluent in?'''<br />
<br />
C++, Java, Lua.<br />
<br />
'''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!'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53522SoC2014 lipkab SDL22014-03-08T10:55:59Z<p>Lipk: </p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_Your_Own_Ideas2014]]<br />
<br />
=ATTENTION=<br />
'''THIS PAGE IS NOT YET FINISHED!!!'''<br />
<br />
=Description=<br />
<h4>TODO: Copy this page and write "your name - proposal title" in this h4 section </h4><br />
TODO: Write a small (1-4 sentences) description of your proposal here.<br />
<br />
TODO: Add more first-level sections to detail your proposal<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* I'd like to do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc on the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
2) Experience<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
I don't consider myself a gamer, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. My (current) favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
Ones that are challenging to beat but can be beated, so roughly the same skill level, I'd say.<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
That depends on game.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the more challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
Well, at least I try to.<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to critique from a wider audience.<br />
<br />
'''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.'''<br />
<br />
That depends on how confident I'm about what I'm doing and also the impacts of a possible failure. I'm much more careful when risking wasting other people's time than my own. <br />
<br />
4) Project<br />
<br />
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?<br />
<br />
4.2) If you have invented your own project, please describe the project and the scope.<br />
<br />
4.3) Why did you choose this project?<br />
<br />
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".<br />
<br />
4.5) Include as much technical detail about your implementation as you can<br />
<br />
4.6) What do you expect to gain from this project?<br />
<br />
4.7) What would make you stay in the Wesnoth community after the conclusion of SOC? <br />
<br />
<br />
5) Practical considerations<br />
<br />
5.1) Are you familiar with any of the following tools or languages?<br />
* Git (used for all commits)<br />
* C++ (language used for all the normal source code)<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth)<br />
* Python (optional, mainly used for tools)<br />
* build environments (eg cmake/scons)<br />
* WML (the wesnoth specific scenario language)<br />
* Lua (used in combination with WML to create scenarios)<br />
<br />
5.2) Which tools do you normally use for development? Why do you use them?<br />
<br />
5.3) What programming languages are you fluent in?<br />
<br />
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!</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53227SoC2014 lipkab SDL22014-02-26T12:37:02Z<p>Lipk: /* IRC */</p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_Your_Own_Ideas2014]]<br />
<br />
=ATTENTION=<br />
'''THIS PAGE IS NOT YET FINISHED!!!'''<br />
<br />
=Description=<br />
<h4>TODO: Copy this page and write "your name - proposal title" in this h4 section </h4><br />
TODO: Write a small (1-4 sentences) description of your proposal here.<br />
<br />
TODO: Add more first-level sections to detail your proposal<br />
<br />
=IRC=<br />
lipkab<br />
<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* I'd like to do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc on the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
<br />
I don't have other commitments. TODO: vacations?<br />
<br />
2) Experience<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
I don't consider myself as such, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. My (current) favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
That depends on game.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the more challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to public critique.<br />
<br />
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<br />
<br />
That depends on how confident I'm about what I'm doing. <br />
<br />
4) Project<br />
<br />
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?<br />
<br />
4.2) If you have invented your own project, please describe the project and the scope.<br />
<br />
4.3) Why did you choose this project?<br />
<br />
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".<br />
<br />
4.5) Include as much technical detail about your implementation as you can<br />
<br />
4.6) What do you expect to gain from this project?<br />
<br />
4.7) What would make you stay in the Wesnoth community after the conclusion of SOC? <br />
<br />
<br />
5) Practical considerations<br />
<br />
5.1) Are you familiar with any of the following tools or languages?<br />
* Git (used for all commits)<br />
* C++ (language used for all the normal source code)<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth)<br />
* Python (optional, mainly used for tools)<br />
* build environments (eg cmake/scons)<br />
* WML (the wesnoth specific scenario language)<br />
* Lua (used in combination with WML to create scenarios)<br />
<br />
5.2) Which tools do you normally use for development? Why do you use them?<br />
<br />
5.3) What programming languages are you fluent in?<br />
<br />
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!</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53226SoC2014 lipkab SDL22014-02-26T12:36:20Z<p>Lipk: /* IRC */</p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_Your_Own_Ideas2014]]<br />
<br />
=ATTENTION=<br />
'''THIS PAGE IS NOT YET FINISHED!!!'''<br />
<br />
=Description=<br />
<h4>TODO: Copy this page and write "your name - proposal title" in this h4 section </h4><br />
TODO: Write a small (1-4 sentences) description of your proposal here.<br />
<br />
TODO: Add more first-level sections to detail your proposal<br />
<br />
=IRC=<br />
lipkab<br />
<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* I'd like to do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc on the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
I don't have other commitments. TODO: vacations?<br />
<br />
2) Experience<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
I don't consider myself as such, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. My (current) favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
That depends on game.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the more challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to public critique.<br />
<br />
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<br />
<br />
That depends on how confident I'm about what I'm doing. <br />
<br />
4) Project<br />
<br />
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?<br />
<br />
4.2) If you have invented your own project, please describe the project and the scope.<br />
<br />
4.3) Why did you choose this project?<br />
<br />
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".<br />
<br />
4.5) Include as much technical detail about your implementation as you can<br />
<br />
4.6) What do you expect to gain from this project?<br />
<br />
4.7) What would make you stay in the Wesnoth community after the conclusion of SOC? <br />
<br />
<br />
5) Practical considerations<br />
<br />
5.1) Are you familiar with any of the following tools or languages?<br />
* Git (used for all commits)<br />
* C++ (language used for all the normal source code)<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth)<br />
* Python (optional, mainly used for tools)<br />
* build environments (eg cmake/scons)<br />
* WML (the wesnoth specific scenario language)<br />
* Lua (used in combination with WML to create scenarios)<br />
<br />
5.2) Which tools do you normally use for development? Why do you use them?<br />
<br />
5.3) What programming languages are you fluent in?<br />
<br />
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!</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53225SoC2014 lipkab SDL22014-02-26T12:35:35Z<p>Lipk: /* Questionnaire */</p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_Your_Own_Ideas2014]]<br />
<br />
=ATTENTION=<br />
'''THIS PAGE IS NOT YET FINISHED!!!'''<br />
<br />
=Description=<br />
<h4>TODO: Copy this page and write "your name - proposal title" in this h4 section </h4><br />
TODO: Write a small (1-4 sentences) description of your proposal here.<br />
<br />
TODO: Add more first-level sections to detail your proposal<br />
<br />
=IRC=<br />
lipkab<br />
<br />
'''1) Basics'''<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* I'd like to do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
* A special bonus for the SDL2 task would be working in cooperation with mordante.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc on the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
I don't have other commitments. TODO: vacations?<br />
<br />
2) Experience<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
I don't consider myself as such, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. My (current) favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
That depends on game.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the more challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to public critique.<br />
<br />
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<br />
<br />
That depends on how confident I'm about what I'm doing. <br />
<br />
4) Project<br />
<br />
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?<br />
<br />
4.2) If you have invented your own project, please describe the project and the scope.<br />
<br />
4.3) Why did you choose this project?<br />
<br />
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".<br />
<br />
4.5) Include as much technical detail about your implementation as you can<br />
<br />
4.6) What do you expect to gain from this project?<br />
<br />
4.7) What would make you stay in the Wesnoth community after the conclusion of SOC? <br />
<br />
<br />
5) Practical considerations<br />
<br />
5.1) Are you familiar with any of the following tools or languages?<br />
* Git (used for all commits)<br />
* C++ (language used for all the normal source code)<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth)<br />
* Python (optional, mainly used for tools)<br />
* build environments (eg cmake/scons)<br />
* WML (the wesnoth specific scenario language)<br />
* Lua (used in combination with WML to create scenarios)<br />
<br />
5.2) Which tools do you normally use for development? Why do you use them?<br />
<br />
5.3) What programming languages are you fluent in?<br />
<br />
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!</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53224SoC2014 lipkab SDL22014-02-26T12:35:08Z<p>Lipk: /* ATTENTION */</p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_Your_Own_Ideas2014]]<br />
<br />
=ATTENTION=<br />
'''THIS PAGE IS NOT YET FINISHED!!!'''<br />
<br />
=Description=<br />
<h4>TODO: Copy this page and write "your name - proposal title" in this h4 section </h4><br />
TODO: Write a small (1-4 sentences) description of your proposal here.<br />
<br />
TODO: Add more first-level sections to detail your proposal<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
TODO: fill out the questionnaire, on your copy of this page. Question are here : [[SoC_Information_for_Google#Does your organization have an application template you would like to see students use?]]<br />
<br />
<br />
<br />
1) Basics<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* I'd like to do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
* A special bonus for the SDL2 task would be working in cooperation with mordante.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc on the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
I don't have other commitments. TODO: vacations?<br />
<br />
2) Experience<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
I don't consider myself as such, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. My (current) favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
That depends on game.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the more challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to public critique.<br />
<br />
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<br />
<br />
That depends on how confident I'm about what I'm doing. <br />
<br />
4) Project<br />
<br />
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?<br />
<br />
4.2) If you have invented your own project, please describe the project and the scope.<br />
<br />
4.3) Why did you choose this project?<br />
<br />
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".<br />
<br />
4.5) Include as much technical detail about your implementation as you can<br />
<br />
4.6) What do you expect to gain from this project?<br />
<br />
4.7) What would make you stay in the Wesnoth community after the conclusion of SOC? <br />
<br />
<br />
5) Practical considerations<br />
<br />
5.1) Are you familiar with any of the following tools or languages?<br />
* Git (used for all commits)<br />
* C++ (language used for all the normal source code)<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth)<br />
* Python (optional, mainly used for tools)<br />
* build environments (eg cmake/scons)<br />
* WML (the wesnoth specific scenario language)<br />
* Lua (used in combination with WML to create scenarios)<br />
<br />
5.2) Which tools do you normally use for development? Why do you use them?<br />
<br />
5.3) What programming languages are you fluent in?<br />
<br />
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!</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC2014_lipkab_SDL2&diff=53223SoC2014 lipkab SDL22014-02-26T12:34:32Z<p>Lipk: Created page with "{{SoC2014Student}} Category:SoC_Ideas_Your_Own_Ideas2014 =ATTENTION= '''DO NOT EDIT THIS PAGE, SoC2014_Template_of_Student_Page, - MAKE A COPY!''' =Description= <h4>TODO..."</p>
<hr />
<div>{{SoC2014Student}}<br />
[[Category:SoC_Ideas_Your_Own_Ideas2014]]<br />
<br />
=ATTENTION=<br />
'''DO NOT EDIT THIS PAGE, SoC2014_Template_of_Student_Page, - MAKE A COPY!'''<br />
<br />
=Description=<br />
<h4>TODO: Copy this page and write "your name - proposal title" in this h4 section </h4><br />
TODO: Write a small (1-4 sentences) description of your proposal here.<br />
<br />
TODO: Add more first-level sections to detail your proposal<br />
<br />
=IRC=<br />
lipkab<br />
<br />
=Questionnaire=<br />
TODO: fill out the questionnaire, on your copy of this page. Question are here : [[SoC_Information_for_Google#Does your organization have an application template you would like to see students use?]]<br />
<br />
<br />
<br />
1) Basics<br />
<br />
'''1.1) Write a small introduction to yourself.'''<br />
<br />
'''1.2) State your preferred email address.'''<br />
<br />
lipkab zoho com<br />
<br />
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''<br />
<br />
lipkab and lipk, respectively.<br />
<br />
'''1.4) Why do you want to participate in summer of code?'''<br />
<br />
I have a number of reasons:<br />
* I'd like to do something useful during the summer holiday.<br />
* Get a nice reference in my CV.<br />
* Earn money.<br />
* A special bonus for the SDL2 task would be working in cooperation with mordante.<br />
<br />
'''1.5) What are you studying, subject, level and school?'''<br />
<br />
I'm doing my second year on Computer Science BSc on the Pázmány Péter University (Faculty for Information Technology).<br />
<br />
'''1.6) What country are you from, at what time are you most likely to be able to join IRC?'''<br />
I'm Hungarian, I usually join IRC at CET nights on weekdays and at unpredictable times during weekends/holidays.<br />
<br />
'''1.7) Do you have other commitments for the summer period ? Do you plan to take any vacations ? If yes, when.'''<br />
I don't have other commitments. TODO: vacations?<br />
<br />
2) Experience<br />
<br />
'''2.1) What programs/software have you worked on before?'''<br />
<br />
I have written a large number of small programs over the years as school work, or practice. As for bigger ones, I've been contributing to Wesnoth since 2012, and I produced a visual editor for Apertium's transfer rule format during last year's GSoC. That project is put on hold, though, since the concept (converting Apertium's declarative semantic to procedural) made further development very difficult. I'm semi-working on a replacement program for Visruled designed with a slightly different approach to avoid the structural problems of the former.<br />
<br />
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''<br />
<br />
If Wesnoth development is considered a team environment, yes...<br />
<br />
'''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?'''<br />
<br />
I successfully participated in GSoC 2013 as a student, see 2.1 for details.<br />
<br />
'''2.4) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''<br />
<br />
I worked with the Apertium folks during last summer and I remained more or less active in the project maintaining and developing the software component I worked on during GSoC (again, see 2.1). I'm also a semi-active Wesnoth developer, my contributions include:<br />
* New storyscreen background WML (was required for the new bigmaps)<br />
* Multiplayer features (modifications, custom add-on options, dependencies)<br />
* MP interface redesign (in collaboration with thunderstruck and Coffee)<br />
* Various bugfixes and PRs<br />
<br />
'''2.5) Gaming experience - Are you a gamer?'''<br />
<br />
I don't consider myself as such, although there're a few games I can play quite a lot of with.<br />
<br />
'''2.5.1) What type of gamer are you?'''<br />
<br />
'''2.5.2) What type of games?'''<br />
<br />
I prefer brain-working ones like strategy or puzzle games. My (current) favorites are Trine 2, Civilization V and Splice. I also like LEGO games!<br />
<br />
'''2.5.3) What type of opponents do you prefer?'''<br />
<br />
'''2.5.4) Are you more interested in story or gameplay?'''<br />
<br />
That depends on game.<br />
<br />
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''<br />
<br />
I've been playing Wesnoth for roughly 3 years now. I was an SP player initially, but nowadays I play MP almost exclusively partly because I've run out of good campaigns and partly for the more challenge.<br />
<br />
'''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.'''<br />
<br />
I have commit access since 2012. I made approximately 100 commits since then, see 2.4 for an overview on their scope.<br />
<br />
<br />
'''3) Communication skills'''<br />
<br />
'''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.'''<br />
<br />
I had no problem communicating with the team in the last 3 years :)<br />
<br />
'''3.2) What spoken languages are you fluent in?'''<br />
<br />
Hungarian (native) and English. I'd like to believe that I'm also capable of communicating in French.<br />
<br />
'''3.3) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''<br />
<br />
I can get along with sane people with different opinions reasonably well but I'm not good at handling idiots. <br />
<br />
'''3.4) Do you give constructive advice?'''<br />
<br />
<br />
'''3.5) Do you receive advice well?'''<br />
<br />
'''3.6) Are you good at sorting useful criticisms from useless ones?'''<br />
<br />
I believe so, although I have gotten very little feedback on my work for both Wesnoth and Apertium and none of my other works were subject to public critique.<br />
<br />
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<br />
<br />
That depends on how confident I'm about what I'm doing. <br />
<br />
4) Project<br />
<br />
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?<br />
<br />
4.2) If you have invented your own project, please describe the project and the scope.<br />
<br />
4.3) Why did you choose this project?<br />
<br />
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".<br />
<br />
4.5) Include as much technical detail about your implementation as you can<br />
<br />
4.6) What do you expect to gain from this project?<br />
<br />
4.7) What would make you stay in the Wesnoth community after the conclusion of SOC? <br />
<br />
<br />
5) Practical considerations<br />
<br />
5.1) Are you familiar with any of the following tools or languages?<br />
* Git (used for all commits)<br />
* C++ (language used for all the normal source code)<br />
* STL, Boost, Sdl (C++ libraries used by Wesnoth)<br />
* Python (optional, mainly used for tools)<br />
* build environments (eg cmake/scons)<br />
* WML (the wesnoth specific scenario language)<br />
* Lua (used in combination with WML to create scenarios)<br />
<br />
5.2) Which tools do you normally use for development? Why do you use them?<br />
<br />
5.3) What programming languages are you fluent in?<br />
<br />
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!</div>Lipkhttps://wiki.wesnoth.org/index.php?title=SoC_People_to_bug_on_IRC&diff=52982SoC People to bug on IRC2014-02-07T20:08:06Z<p>Lipk: Moved boucman, gabba, ilor and grzywacz to inactive.</p>
<hr />
<div>{{SoC2014}}<br />
<br />
== People to bug on IRC ==<br />
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:<br />
<br />
=== Crab_ ===<br />
iurii chernyi (Crab) has joined the team in 2009. He restructured Wesnoth AI as part of GSoC-2009, and is an expert on all aspects of current Wesnoth AI codebase. So, he's the person to ask about anything in '''src/ai'''. He also knows much about campaign units/leaders persistence.<br />
<br />
=== happygrue/Wintermute === <br />
<br />
Has been involved with multiplayer balance and testing for a number of years. Currently working on balancing the default+khalifate era, but interested in, and often available for, testing various aspects game play or mechanics. A good person to bug about getting feedback from the multiplayer community about any relevant issue.<br />
<br />
=== loonycyborg ===<br />
Maintainer of Wesnoth's SCons build system and windows packager. Might also help out with other buildsystems.<br />
<br />
=== Mordante ===<br />
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. Mordante is currently busy rewriting the old gui engine, he will be our expert there as well as already being our area expert for the terrain engine. He also has limited experience with boost asio.<br />
<br />
=== Nils Kneuper (Ivanovic) ===<br />
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.<br />
<br />
=== Noy ===<br />
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.<br />
<br />
=== shadowm ===<br />
He has been around since late 2007, and has worked in many areas of the game, including WML event commands handling, image path functions, and the add-ons client code. As an add-on content developer, he also knows a lot about the WML language itself (preprocessor, syntax) and the functionality available in single-player campaigns.<br />
<br />
=== Soliton ===<br />
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.<br />
<br />
=== vultraz ===<br />
He can assist with questions related to the Lua GUI2 bindings and their usage.<br />
<br />
=== zookeeper ===<br />
Has been around for a long time and has at least a passing familiarity with most things outside the engine code, music and Lua. Maintains a large part of the mainline campaigns and knows the WML language well. Can be contacted when it comes to anything related to WML, gameplay and scenario design, or the mainline content in general.<br />
<br />
== Inactive people ==<br />
<br />
These people are currently not actively participating in development and are likely not available to help. You can always try, of course. They may also not be entirely up-to-date regarding their areas of expertise anymore.<br />
<br />
=== boucman ===<br />
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.<br />
<br />
=== Dave alias Sirp ===<br />
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.<br />
<br />
=== Dragonking ===<br />
<br />
He is one of our best Wesnoth players, and understands the various strategies well. He has also programmed much of the Wesnoth Formula AI system and understands it well.<br />
<br />
=== Eric S. Raymond (ESR) ===<br />
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.<br />
<br />
=== Gabriel Morin (gabba) ===<br />
<br />
gabba joined the team in 2010 where he participated in GSoC, and is the conceptor and maintainer of Wesnoth's planning system, codenamed "Whiteboard".<br />
<br />
=== ilor ===<br />
2008 GSoC student, worked on and maintains the new map editor in Wesnoth 1.5/1.6/1.7. Has some fairly recent experience with getting "in" the Wesnoth codebase.<br />
<br />
=== Karol Nowak (grzywacz) ===<br />
Two years he participated at GSoC as a student, so he will understand the situation of GSoC students. Beside this he is our top expert on Wesnoth for embedded devices as he worked on the gp2x support.<br />
<br />
=== Sapient ===<br />
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 as 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. <br />
<br />
=== YogiHH ===<br />
Since he is the developer who know most about building under Windows, he 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.<br />
YogiHH also knows quite a bit about the game engine and everything that has to do with replays and savegames.<br />
<br />
=== Mythological or Rhuvaen ===<br />
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.</div>Lipkhttps://wiki.wesnoth.org/index.php?title=User:Shadowm/PatchSubmissionGuidelines&diff=52964User:Shadowm/PatchSubmissionGuidelines2014-02-03T19:55:29Z<p>Lipk: /* After submission */</p>
<hr />
<div>''This is an updated version of the [[PatchSubmissionGuidelines]] I'm preparing here. This document is '''not''' authoritative until it replaces the current [[PatchSubmissionGuidelines]] at their current location.<br><br>-- shadowmaster''<br />
<br />
Submitting a patch for a large and mature project like Wesnoth can be an even more daunting task than writing the code it delivers. This page provides some advice and requirements for prospective code contributors seeking the best chance of acceptance for their patches.<br />
<br />
== Technical requirements ==<br />
<br />
* '''All patches should be submitted as GitHub pull requests'''<br>You may post them in the [http://forums.wesnoth.org/viewtopic.php?f=10 Coder's Corner] forum for discussion too, but we need to track their status, and GitHub is better suited for this. See [http://wiki.wesnoth.org/WesnothRepository this] page for help on using git and GitHub. <br />
<br />
* '''Add entries to the changelogs summarizing your changes if necessary'''<br>The <code>changelog</code> file contains a list of outstanding changes that is published with every release. If you are fixing a bug or adding a feature that is particularly visible or important for players, you should also add an entry to the <code>players_changelog</code> file.<br />
<br />
* '''When adding new C++ source code files, make sure to update the most commonly used project files'''<br>The development team primarily uses CMake, SCons, and Visual C++ 2008. The relevant files are <code>src/CMakeLists.txt</code>, <code>src/SConscript</code>, and <code>projectfiles/VC9/wesnoth.vcproj</code>. You may take a look at how existing source code files are handled in each build script to get an idea of the best way to add your own.<br />
<br />
* '''C++ source code patches must not generate new warnings'''<br>Wesnoth has a large number of compiler warnings enabled, and all of them are useful. If your code causes new warnings during build, you will be required to fix them.<br />
<br />
* '''Add yourself to the game credits'''<br>Including your name and/or username(s) makes it easier for the development team and the community at large to recognize your contributions. New contributors (i.e. those without commit access) should add themselves to the ''Miscellaneous Contributors'' section of the credits file (<code>data/core/about.cfg</code>), making sure to follow alphabetical order with respect to the first character that will be displayed.<br />
<br />
* '''When changing or adding WML features, provide directions for updating the wiki along with your submission in the tracker'''<br>This allows us to provide content creators with up-to-date information about WML features, even if you cannot be around in time for the commit or the next release.<br />
<br />
== After submission ==<br />
<br />
* '''Be patient, sometimes we are not very responsive'''<br>The Wesnoth developers live on different locations across the globe and have other matters to attend to, most of the time. It may happen that your patch is assigned to a developer who is currently unable to dedicate much time to reviewing it. If you feel that it takes way too long for us to respond, contact us in #wesnoth-dev on irc.freenode.net.<br />
<br />
* '''Don't be suprised if we discuss the patch a lot'''<br>Thus, you should leave us a way to contact you, either a forum nick, an email adress, or submit with a registered Gna.org account. We recommend that you join the #wesnoth-dev channel on irc.freenode.net regularly so we can contact you in real time if needed.<br />
<br />
* '''Sometimes patches are rejected, don't be suprised if this happens'''<br>''('''FIXME''': common rejection reasons, some words of encouragement.)''<br />
<br />
== Obtaining help ==<br />
<br />
If you encounter any issues or need additional guidance when preparing your patch, you may ask the developers on #wesnoth-dev on irc.freenode.net ''('''FIXME''': include the forums and devs ML here?)''. ''('''FIXME''': could really use a link with a guide to using IRC and asking questions in #wesnoth-dev here, e.g. explaining the timezones issue, idlers, etc.)''<br />
<br />
== See also ==<br />
<br />
* [[HackingWesnoth]]<br />
* [[CodingStandards]]<br />
* [[EasyCoding]]<br />
* [[DeveloperResources]]<br />
<br />
[[Category:Development]]</div>Lipkhttps://wiki.wesnoth.org/index.php?title=User:Shadowm/PatchSubmissionGuidelines&diff=52963User:Shadowm/PatchSubmissionGuidelines2014-02-03T19:45:20Z<p>Lipk: /* Technical requirements */</p>
<hr />
<div>''This is an updated version of the [[PatchSubmissionGuidelines]] I'm preparing here. This document is '''not''' authoritative until it replaces the current [[PatchSubmissionGuidelines]] at their current location.<br><br>-- shadowmaster''<br />
<br />
Submitting a patch for a large and mature project like Wesnoth can be an even more daunting task than writing the code it delivers. This page provides some advice and requirements for prospective code contributors seeking the best chance of acceptance for their patches.<br />
<br />
== Technical requirements ==<br />
<br />
* '''All patches should be submitted as GitHub pull requests'''<br>You may post them in the [http://forums.wesnoth.org/viewtopic.php?f=10 Coder's Corner] forum for discussion too, but we need to track their status, and GitHub is better suited for this. See [http://wiki.wesnoth.org/WesnothRepository this] page for help on using git and GitHub. <br />
<br />
* '''Add entries to the changelogs summarizing your changes if necessary'''<br>The <code>changelog</code> file contains a list of outstanding changes that is published with every release. If you are fixing a bug or adding a feature that is particularly visible or important for players, you should also add an entry to the <code>players_changelog</code> file.<br />
<br />
* '''When adding new C++ source code files, make sure to update the most commonly used project files'''<br>The development team primarily uses CMake, SCons, and Visual C++ 2008. The relevant files are <code>src/CMakeLists.txt</code>, <code>src/SConscript</code>, and <code>projectfiles/VC9/wesnoth.vcproj</code>. You may take a look at how existing source code files are handled in each build script to get an idea of the best way to add your own.<br />
<br />
* '''C++ source code patches must not generate new warnings'''<br>Wesnoth has a large number of compiler warnings enabled, and all of them are useful. If your code causes new warnings during build, you will be required to fix them.<br />
<br />
* '''Add yourself to the game credits'''<br>Including your name and/or username(s) makes it easier for the development team and the community at large to recognize your contributions. New contributors (i.e. those without commit access) should add themselves to the ''Miscellaneous Contributors'' section of the credits file (<code>data/core/about.cfg</code>), making sure to follow alphabetical order with respect to the first character that will be displayed.<br />
<br />
* '''When changing or adding WML features, provide directions for updating the wiki along with your submission in the tracker'''<br>This allows us to provide content creators with up-to-date information about WML features, even if you cannot be around in time for the commit or the next release.<br />
<br />
== After submission ==<br />
<br />
* '''Be patient, sometimes we are not very responsive'''<br>The Wesnoth developers live on different locations across the globe and have other matters to attend to, most of the time. It may happen that your patch is assigned to a developer who is currently unable to dedicate much time to reviewing it.<br>''('''FIXME''': alternatively, it may happen that the patch is never assigned to anyone. What to do about this?)''<br />
<br />
* '''Don't be suprised if we discuss the patch a lot'''<br>Thus, you should leave us a way to contact you, either a forum nick, an email adress, or submit with a registered Gna.org account. We recommend that you join the #wesnoth-dev channel on irc.freenode.net regularly so we can contact you in real time if needed.<br />
<br />
* '''Sometimes patches are rejected, don't be suprised if this happens'''<br>''('''FIXME''': common rejection reasons, some words of encouragement.)''<br />
<br />
== Obtaining help ==<br />
<br />
If you encounter any issues or need additional guidance when preparing your patch, you may ask the developers on #wesnoth-dev on irc.freenode.net ''('''FIXME''': include the forums and devs ML here?)''. ''('''FIXME''': could really use a link with a guide to using IRC and asking questions in #wesnoth-dev here, e.g. explaining the timezones issue, idlers, etc.)''<br />
<br />
== See also ==<br />
<br />
* [[HackingWesnoth]]<br />
* [[CodingStandards]]<br />
* [[EasyCoding]]<br />
* [[DeveloperResources]]<br />
<br />
[[Category:Development]]</div>Lipkhttps://wiki.wesnoth.org/index.php?title=OptionWML&diff=52691OptionWML2013-12-28T10:07:56Z<p>Lipk: Added [combo] and sorted alphabetically.</p>
<hr />
<div>{{WML Tags}}<br />
== The [options] tag ==<br />
<br />
{{DevFeature1.11}} This tag might be a child of an [era], [multiplayer] or [modification] tag. Its subtags describe a set of configuration options which are displayed to the user as widgets on the game creation screen, and the entered values are translated into WML variables in the game. Please note that the option variables are initialized in a prestart event, therefore they can't be used before the first prestart event. The created variables' name is identical to the option's id they're attached to, so option ids must be unique across all kinds of options.<br />
<br />
The following subtags are recognized for '''[options]''':<br />
<br />
* '''[checkbox]''': registers a checkbox.<br />
** '''id''': the id for this option. Must be unique.<br />
** '''default''': boolean value, determines if the box should be checked initially. Default no.<br />
** '''name''': a string to be displayed next to the widget.<br />
** '''description''': the tooltip text to be displayed when the user hovers the mouse over the widget.<br />
* '''[combo]''': registers a combo box.<br />
** '''id''': the id for this option. Must be unique.<br />
** '''default''': the default value of the widget.<br />
** '''name''': a string to be displayed next to the widget.<br />
** '''description''': the tooltip text to be displayed when the user hovers the mouse over the widget.<br />
** '''[item]''': adds an item to the combo box.<br />
*** '''name''': the displayed name of this item.<br />
*** '''value''': the value the widget will take when this item is selected.<br />
* '''[entry]''': registers a text entry.<br />
** '''id''': the id for this option. Must be unique.<br />
** '''default''': the string initially displayed by the widget.<br />
** '''name''': a string to be displayed next to the widget.<br />
** '''description''': the tooltip text to be displayed when the user hovers the mouse over the widget.<br />
* '''[slider]''': registers an integer slider.<br />
** '''id''': the id for this option. Must be unique.<br />
** '''default''': an integer value. The slider will be positioned at this value by default.<br />
** '''min''': the minimal value the slider can take.<br />
** '''max''': the maximal value the slider can take.<br />
** '''step''': the difference between adjacent values the slider can take. Default 1.<br />
** '''name''': a string to be displayed next to the widget.<br />
** '''description''': the tooltip text to be displayed when the user hovers the mouse over the widget.</div>Lipkhttps://wiki.wesnoth.org/index.php?title=EraWML&diff=52648EraWML2013-12-10T21:07:05Z<p>Lipk: add description key</p>
<hr />
<div>{{WML Tags}}<br />
== The [era] top level tag ==<br />
<br />
This tag describes one era. An era is a set of teams to play in multiplayer.<br />
<br />
In the multiplayer game creation screen, an era is chosen by the host by the 'Era' option button.<br />
<br />
The following key/tags are recognized for '''[era]'''<br />
* '''id''': ID of the era - must be unique. No gameplay effect<br />
* '''name''': displayed name of the era.<br />
* '''description''': {{DevFeature1.11}} a short description of the era.<br />
* <span id="require_era">'''require_era'''</span>: whether clients are required to have this era installed beforehand to be allowed join a game using this era. Possible values 'yes' (the default) and 'no'.<br />
* '''allow_scenario''': {{DevFeature1.11}} a list of scenario ids. Only the scenarios with matching ids will be allowed to be played with this era.<br />
* '''disallow_scenario''': {{DevFeature1.11}} a list of scenario ids. Only the scenarios with matching ids will not be allowed to be played with this era. Cannot be used in parallel with allow_scenario.<br />
* '''ignore_incompatible_scenario''': {{DevFeature1.11}} a list of scenario ids. The scenarios with matching ids will be considered compatible with this era regardless their dependencies.<br />
* '''allow_modification''': {{DevFeature1.11}} same as allow_scenario, but for modifications.<br />
* '''disallow_modification''': {{DevFeature1.11}} same as disallow_scenario, but for modifications. Cannot be used in parallel with allow_modification.<br />
* '''ignore_incompatible_modification''': {{DevFeature1.11}} same as ignore_incompatible_scenario, but for modifications.<br />
* '''force_modification''': {{DevFeature1.11}} a list of modification ids. The specified modifications must be enabled to play this era.<br />
* '''[multiplayer_side]''': a faction in the era. This tag contains many of the same keys as a [side] tag (A description of the [side] tag can be found in [[SideWML]]). When a multiplayer game is played, then the [side] tag for the scenario is merged with the keys(currently, not tags) of the [multiplayer_side] tag of the faction which the side chose.<br />
** '''id''': faction ID - must be unique to your era. No gameplay effect<br />
** '''name''': a description that Wesnoth displays as the option selecting that faction; see [[DescriptionWML]]. Any image in this description will ''not'' use the team color.<br />
** '''image''': an image to display in the option. This image will use the team color.<br />
** '''flag_rgb''': often set by [http://www.wesnoth.org/macro-reference.xhtml#MAGENTA_IS_THE_TEAM_COLOR MAGENTA_IS_THE_TEAM_COLOR]<br />
** '''leader''': a list of unit types. When this faction is chosen, the side can choose any of these unit types to be the side's leader (i.e. "Choose your Leader"). They will also have the option of having one of these types being chosen randomly.<br />
** '''random_leader''': if this list of types is present, it would use this list to instead to choose a random leader. If not it would use '''leader'''<br />
** '''random_faction''': default 'no'. If 'yes', then when this faction is chosen, another non random faction will be randomly chosen instead. The leader will also be chosen randomly.<br />
** '''choices''': Empty by default. If non-empty and the faction has '''random_faction=yes''', it is the list of the IDs of the non random factions that will be choosen randomly. If empty, any faction can be chosen.<br />
** '''except''': Empty by default. If the faction has random_faction=yes, it is the list of the IDs of the non random factions that will not be choosen randomly.<br />
** '''type''': the unit type of the default leader for the side. This must be present. 'random' is a valid value here and will cause a random leader choice by default.<br />
** '''recruit''': a comma-separated list of unit types this faction can recruit.<br />
** '''terrain_liked''': an unseparated list of terrains (see [[TerrainCodesWML]]). On random maps, these terrains will determine which keep the side is assigned, attempting to put it near the listed terrains.<br />
* '''[event]''': any [event]s written inside the [era] tag will get included into scenarios that are played using this era. See [[EventWML]].<br />
* '''[options]''': {{DevFeature1.11}} custom options. See [[OptionWML]] for details.<br />
* '''[ai]''': See [[AiWML]] for details.<br />
<br />
== See Also ==<br />
<br />
* [[ReferenceWML]]<br />
* [[SideWML]]<br />
<br />
<br />
[[Category: WML Reference]]</div>Lipkhttps://wiki.wesnoth.org/index.php?title=Guide_to_UMC_Content&diff=51663Guide to UMC Content2013-07-15T13:19:49Z<p>Lipk: Copy the entries of those campaigns that exist on both servers to the 1.11 section.</p>
<hr />
<div>''This is a guide to the current (1.10.x/1.11.x) UMC campaigns for players. It aims to provide all the information not only about the story, but also about completion, difficulty and playing style of the campaign. See also [[Guide_to_UMC_Campaigns/Players_Reviews|Players Reviews]], as well as http://forums.wesnoth.org/viewtopic.php?f=8&t=37476 for further information and http://forums.wesnoth.org/viewtopic.php?f=8&t=36733 (for currently non-available UMC-content). Please edit, it is a wiki.''<br />
<br />
=== Blueprint ===<br />
<br />
'''Description:'''<br />
<br />
'''Author:'''<br />
<br />
'''Maintainer:''' if not maintained by the author anymore.<br />
<br />
'''Status:'''<br />
* Broken = Does not work at all<br />
* Incomplete = Partially written, no progress<br />
* WIP = Partially written, progress<br />
* Complete = Completely written, but buggy as well as potential balance issues.<br />
* Finished = Completely written, minimal to no bugs, slight balance issues possible. <br />
<br />
'''Length:'''<br />
<br />
'''Version: '''<br />
<br />
'''Requirements:''' (only if needed)<br />
<br />
'''Difficulty:'''<br />
<br />
Please note: Often campaigns introducing new mechanics are listed as expert level on the add-on server, here difficulty means the raw difficulty after the mechanics are understood.<br />
<br />
* Unbalanced = If you can't beat the hard mode, it isn't necessarily unbalanced, but if the difficulty changes erraticly from one scenario to the next and only people using the debug mode have seen the final, then it is.<br />
* Easy<br />
* Normal<br />
* Hard<br />
<br />
'''Style:''' <br />
<br />
Please note: Many campaigns will feature more than one style. Please list the most significant ones.<br />
<br />
* Skirmish = small to medium sized armies, your standard Wesnoth gameplay<br />
* Dungeon = long and narrow tunnels (not every underground scenario is a dungeon, a dungeon isn't necessarily underground)<br />
* RPG = role playing game elements such as talking with non-player-characters, item collection, dependency on a party of very few adventurers without or limited recruits<br />
* Survival = being exposed to changing, spawning enemies while remaining on the same map<br />
* Large Battle = large number of units on the battlefield, sizely maps<br />
* Simulation = campaigns feat. terrain modification, alternative resources<br />
* Boss battle = the challenge is to defeat a single powerful enemy unit<br />
* Minigames = there are puzzles and minigames in the campaign that significantly differ from standard Wesnoth gameplay<br />
<br />
'''Faction/Era:'''<br />
<br />
* Era for the whole campaign and more specifically the faction or unit composition you field.<br />
<br />
'''Custom units:'''<br />
<br />
* Link to the unit tree for cases that don't feel sufficiently described by Faction / Era entry.<br />
<br />
'''Forum:'''<br />
<br />
* Links to the feedback and development threads at forums.wesnoth.org<br />
<br />
<br />
<br />
<br />
<br />
== Battle for Wesnoth 1.10.x - stable ==<br />
<br />
''Campaigns available in the 1.10.x stable version.''<br />
<br />
<br />
<br />
=== A Gryphon's Tale ===<br />
<br />
''A Gryphon's Tale tells the story of a community of civilized Gryphons, and of Neliflua, an ambitious young female among them who falls into unusual circumstances.''<br />
<br />
'''Author:''' Ringcaat/Dwarven_Void<br />
<br />
'''Status:''' One branch complete, most incomplete<br />
<br />
'''Length:''' 11-12 scenarios (branch dependent)<br />
<br />
'''Version:''' 0.6.12<br />
<br />
'''Difficulty:''' Easy<br />
<br />
'''Style:''' RPG/minigames<br />
<br />
'''Faction/Era:''' Gryphon/Orc<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=2906&start=195&<br />
<br />
<br />
=== After the Storm ===<br />
<br />
''Follow the journey of Galas and his band following the events of <i>Invasion from the Unknown</i>''<br />
<br />
'''Author:''' shadowmaster/ShikadiLord<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 3 episodes of 13 scenarios each, some of which are multi-part<br />
<br />
'''Version:''' 0.9.5<br />
<br />
'''Difficulty:''' Medium-hard<br />
<br />
'''Style:''' Skirmish, Boss Battle, Dungeon<br />
<br />
'''Faction/Era:''' Many custom units<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=32091<br />
<br />
'''Note:''' (vultraz) Long, very enjoyable campaign with great story. (Knyghtmare) The best UMC campaign ever!<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#After_the_Storm Players´ Review]'''<br />
<br />
<br />
=== Aldur The Great ===<br />
<br />
''This is a story about Aldur the Great.''<br />
<br />
'''Author:''' pintercsabi<br />
<br />
'''Status:''' Complete, but unbalanced<br />
<br />
'''Length:''' 5 playable scenarios<br />
<br />
'''Version:''' 1.2.2<br />
<br />
'''Difficulty:''' Unbalanced<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default<br />
<br />
'''Forum:''' -<br />
<br />
'''Note:''' (Adamant14) Short unbalanced campaign, maybe abandoned. You fight with Peasants, Ruffians and Woodsman against Orcs<br />
<br />
<br />
=== Alfhelm the Wise ===<br />
<br />
''This is the tale of Alfhelm, called by some the Wise, son of Alfric Conqueror. This is the tale of his victories over his enemies, and his rise to power in the clans of Marauderdom. This is the tale of his journey south and his destruction of the Lavinian Empire. And this is the tale of his demise in the dark forests far to the east of his homeland.''<br />
<br />
'''Author:''' turin<br />
<br />
'''Maintainer:''' UnwiseOwl<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 15 gameplay scenarios <br />
<br />
'''Version:''' 0.6.0<br />
<br />
'''Difficulty:''' Moderate<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Imperial Era, Marauders.<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=17144<br />
<br />
'''Note:''' (Maintainer) Though this campaign is complete and playable the whole way through, the code is four years old and pretty buggy. If you notice any errors while playing, please let me know and I'll incorporate the fixes into my next revision as soon as possible.]<br />
<br />
<br />
=== A New Order ===<br />
<br />
''The old kingdom of Wesnoth has fallen before barbarian hordes. The occupying barbarians are on the brink of civil war, the seeds of Wesnothian rebellion are kept alive by old legends, while bandits and Khalifate mercenaries roam the land. Can Gawen Hagarthen unite these disparate factions against a common foe?<br />
Note: This campaign contains mature themes, some of which may be unsuitable for children.<br />
<br />
'''Author:''' szopen<br />
<br />
'''Status:''' Finished. <br />
<br />
'''Length:''' 45 scenarios.<br />
<br />
'''Version: ''' 1.2.15<br />
<br />
'''Requirements:''' Requires BfW 1.10. In addition, you have to install Era Khalifate add-on; the Akladian Music package is optional<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle<br />
<br />
'''Faction/Era:''' Akladians, Khalifate<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=6486<br />
<br />
'''Note:''' (Pyrophorus) Certainly one of the most mature and well designed campaign in add-ons. A must.<br />
<br />
''' [http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#A_New_Order Players´ Review]'''<br />
<br />
<br />
=== Antar, Son of Rheor ===<br />
<br />
''This is the story about a young Lord and his first mission; sent by his father the young Lord Antar has to relieve his neighbours; he has to convince the Elves and Dwarves to ally him; he has to fight against hordes of Orcs and Endless Undead; and finally he has to defeat Mal Kazur, the mastermind who is behind all the evil.''<br />
<br />
'''Author:''' Adamant14<br />
<br />
'''Status:''' WIP<br />
<br />
'''Length:''' 9 playable scenarios / 1 cutscene<br />
<br />
'''Version:''' 0.9.9<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Loyalists and Elves (feat. fencer as main hero + various allies)<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36075<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Antar.2C_Son_of_Rheor Players´ Review]'''<br />
<br />
<br />
=== A Story of the Northlands ===<br />
<br />
''A story of life and death in a remote village of the Northlands. Your village has been overrun by an orcish raid. You fight for its freedom while you wait for help to arrive.''<br />
<br />
'''Author:''' zepko<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 10 playable scenarios + 1 dialogue-only<br />
<br />
'''Version:''' 1.0.0<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default + additions: you play with a custom faction of outlaws and with a custom party of loyalist knights.<br />
<br />
'''[http://units.wesnoth.org/1.10/A_Story_of_the_Northlands/en_US/A_Story_of_the_Northlands.html Custom Units]'''<br />
<br />
<br />
=== A Vision Blinded ===<br />
<br />
''Defend the northern forest against what appeared like a routine orcish raid, and unravel the greater conspiracies that lie below its waves.''<br />
<br />
'''Author:''' LemonTea<br />
<br />
'''Maintainer:''' AxalaraFlame<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 13 playable scenarios + 1 dialogue-only<br />
<br />
'''Version:''' 0.6.10<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Elves (+ Trolls, Outlaws)<br />
<br />
'''[http://units.wesnoth.org/1.10/A_Vision_Blinded/en_US/A_Vision_Blinded.html Custom units]'''<br />
<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=23463&hilit=a+vision+blinded<br />
<br />
<br />
=== Bad Moon Rising ===<br />
<br />
''An expedition to gather treasure from the cold north sets off compounding disaster.''<br />
<br />
'''Author:''' Doofus-01<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 20 scenarios<br />
<br />
'''Version:''' 1.4.4.a<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Archaic Era<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=31348<br />
<br />
<br />
=== Battle Against Time ===<br />
<br />
''Rescue fellow orcish warchief before he is executed. (This is not a normal campaign. It is experiment with carryover system. You will start with defined number of turns and gold. You will only have that many turns to play through the whole campaign. There is no finish bonus and gold carryover is always 100%.)''<br />
<br />
'''Author:''' Wonderboy<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 4 playable scenarios + 1 prologue scenario<br />
<br />
'''Version:''' 1.0.0<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default: Orcs<br />
<br />
'''Forum:''' http://wesnoth.org/forum/viewtopic.php?f=8&t=27319<br />
<br />
<br />
=== Besieged Druids ===<br />
<br />
''A elvish school for druids comes under attack by goblins. It seems more than just a routine raid; is there something more sinister behind this attack? - In Beseiged Druids, you control Eärendil, the surviving teacher at the school, and the many and varied initiates. Not all of these are ordinary students; many have been experimenting with other forms of magic, while others are simply overachievers in some area of study. Unfortunately, they are not especially good at combat, at least initially. Together with a very small contingent of surviving guards, it is up to these students to save the island of Aleron from disaster.''<br />
<br />
'''Author:''' Celtic Minstrel<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 9 scenarios<br />
<br />
'''Version:''' 1<br />
<br />
'''Difficulty:''' Unbalanced<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Elves<br />
<br />
'''[http://units.wesnoth.org/1.10/DruidSiege/en_US/celmin-druid-siege.html Custom units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37342<br />
<br />
<br />
=== Birth of a Lich ===<br />
<br />
''This is the life story of the dreaded lich Malifor, his struggle as a mage outcast, the orcish conquest of the northlands and his transformation to quench the thirst for revenge''<br />
<br />
'''Author:''' chak_abhi<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 12 playable scenarios / 2 dialogue only<br />
<br />
'''Version:''' 1.0.3<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle, Dungeon<br />
<br />
'''Faction/Era:''' Human outlaws, dwarves, undead<br />
<br />
'''[http://units.wesnoth.org/1.10/Birth_of_a_Lich/en_US/Birth_of_a_Lich.html Custom Units]<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37057<br />
<br />
<br />
=== Bitter Revenge===<br />
<br />
''Amidst the strife and turmoil of the first Dark Age of Wesnoth, a time of transient monarchies and conspiracies against the Crown, the boy Darith witnesses the murder of his father by a general of Wesnoth. Follow Darith's quest for retribution in this treacherous tale of betrayal, deceit, love, remorse, and vengeance.''<br />
<br />
'''Author:''' Wonderboy<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 11 playable scenarios + 4 dialogue only<br />
<br />
'''Version:''' 1.1.0<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default (mostly outlaws and undead, custom units)<br />
<br />
'''Forum:''' http://wesnoth.org/forum/viewtopic.php?f=8&t=26699<br />
<br />
<br />
=== Cavanagh The Conqueror ===<br />
<br />
''This is the tale of Cavanagh Orc-Foundling, who was blessed by the gods to conquer and unite all of the Great Continent. Orcs and elves, gods and men, queens and sorcerers populate this epic tale of revenge and redemption.''<br />
<br />
'''Author:''' TheEmptyLord (Programming, Map-making, Editing), Scott_Free(Story)<br />
<br />
'''Status:''' WIP<br />
<br />
'''Length:''' 10 Playable Scenarios so far<br />
<br />
'''Version:''' 0.1.2<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, limited RPG, limited Large Battle<br />
<br />
'''Faction/Era:''' Default (Units from Northerners, Outlaws, Loyalists as well as other factions interspersed. Several custom units.)<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=35927<br />
<br />
<br />
=== Cities of the Frontier ===<br />
<br />
''Settle a new town in the wilds north of the Great River.''<br />
<br />
''This campaign makes several changes to the standard Wesnoth game mechanics, and focuses on city-building and gold management.''<br />
<br />
'''Author:''' esci<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' Not fixed, approximately 6-10 seasons of 36 turns each<br />
'''Version:''' 0.5.1<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Simulation, Survival<br />
<br />
'''Faction/Era:''' Default, Loyalist<br />
<br />
'''[http://units.wesnoth.org/1.10/Cities_of_the_Frontier/en_US/Cities_of_the_Frontier.html Custom units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36004<br />
<br />
<br />
=== Considerate Dead ===<br />
<br />
''As the wind goes on and on, people discover necromancer aren't always bad. Made by tribes45 - No scenarios are done, 4 playable out of ??.''<br />
<br />
'''Author:''' tribes45 aka tribes55<br />
<br />
'''Status:''' Incomplete, unbalanced, abandoned<br />
<br />
'''Length:''' 5 scenarios<br />
<br />
'''Version:''' .009<br />
<br />
'''Difficulty:''' Unbalanced<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36522<br />
<br />
<br />
=== Count Kromire ===<br />
<br />
''You are the blood son of a vampire lord, however when the might of the celestial crusades comes knocking, and your father is slain, you flee your lands. However you intend to return, to restore the lands of Kromire to the Kromires, to avenge your father, and most importantly, to make sure that no celestial ever dares come into your mountains again.''<br />
<br />
'''Author:''' Velensk<br />
<br />
'''Maintainer:''' currently none<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 9 scenarios<br />
<br />
'''Version:''' 1.3.2<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Era of Myths, Vampires<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=21560<br />
<br />
<br />
=== Elvish Dynasty RPG ===<br />
<br />
''You are the new ruler of an elvish kingdom! Can you lead your people to glory? This campaign is highly randomized so it will be different every time you play!''<br />
<br />
''Sequel to Ooze Mini-Campaign''<br />
<br />
'''Author:''' spencelack<br />
<br />
'''Maintainer:''' Wesbane<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 10 years, in each year choice between dialogue and fighting scenario (selected out of a large pool of possible scenarios)<br />
<br />
'''Version:''' 0.9.9b<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' RPG, Skirmish<br />
<br />
'''Faction/Era:''' Default, Elves<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=28627<br />
<br />
<br />
=== Fall of Silvium ===<br />
<br />
''You are Caius Regilius, Tribune of the province of Silvia, located in the northmost reaches of the Lavinian Empire at the height of its power. But the Empire has overextended itself, The city of Silvium lies seperated from the rest of the Empire by the mountains of Arendia, and is sandwiched between the Marauders and the Sidhe... war is inevitable, and the province of Silvia will almost certainly fall.''<br />
<br />
'''Author:''' turin<br />
<br />
'''Maintainer:''' UnwiseOwl<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 8 scenarios<br />
<br />
'''Version:''' 0.6<br />
<br />
'''Difficulty:''' Medium<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Imperial Era, Lavinian Legion.<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=31&t=24356<br />
<br />
'''Note:''' The final level of this campaign is not supposed to be winnable. It's a final blaze of glory and chance to use all your high-powered units, but to 'win' the campaign, you must lose...the ending is similar to a certain mainline campaign, but predates it.<br />
<br />
<br />
=== Fate of a Princess ===<br />
<br />
''Part I: Baldres, a notorious robber baron, flees Wesnoth with his followers and sets off into the northlands to evade the king's justice. The baron's deeds and misdeeds are to change the balance of power between orcs and non-orcs throughout the northlands, and will carry consequences long after his eventual death.''<br />
<br />
''Part II: The Greenwood elves face a crisis which demands the return of the queen's estranged half-elven half-sister, Baldres' daughter. Two brave young elves must make a perilous journey to find her and bring her back to her former home. If they fail, the whole northlands will be engulfed in war with the resurgent orcs...''<br />
<br />
'''Author:''' SkyOne, mich, simonsmith<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 26-29 scenarios (some dialogue-only), 2 parts<br />
<br />
'''Version:''' 0.9.17<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Dungeon<br />
<br />
'''Faction/Era:''' Default with additions. You play two different, unique cross-faction combinations in each part.<br />
<br />
'''[http://units.wesnoth.org/1.10/Fate_of_a_Princess/en_US/Fate_of_a_Princess.html Custom units]'''<br />
<br />
'''Required Wesnoth version:''' 1.9.12 or later<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=26327<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Fate_of_a_princess Players´ Review]'''<br />
<br />
<br />
=== Forgotten Kingdom ===<br />
<br />
''Help Orlog, a troll chieftan, lead his people to safety in the underground and discover an ancient power long forgotten.''<br />
<br />
'''Author:''' Limabean<br />
<br />
'''Maintainer:''' Chrysophylax<br />
<br />
'''Status:''' Incomplete ( but all scenarios playable and balanced )<br />
<br />
'''Length:''' 9 playable scenarios + 1 dialogue-only<br />
<br />
'''Version:''' 0.1.7<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Goblins, Trolls<br />
<br />
'''[http://units.wesnoth.org/1.10/Forgotten_Kingdom/en_US/Forgotten_Kingdom.html Custom units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=23483<br />
<br />
'''Note:''' (Adamant14) This campaign includes a custom Troll line. A good campaign, I hope Limabean and/or Chrysophylax will finish it.<br />
<br />
<br />
=== Forward they Cried ===<br />
<br />
''You are the leader of an advanced detachment that has been tasked with capturing a bridgehead while the main army prepares to attack. It should be a simple enough assignment.''<br />
<br />
'''Author:''' Glowing Fish<br />
<br />
'''Maintainer:''' Lord-Knightmare <br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 1 scenario ( rather a single scenario than a campaign )<br />
<br />
'''Version:''' 1.0.0<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default Loyalists<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=23656&p=350126&hilit=forward+they+cried#p350126<br />
<br />
'''Note:''' (Adamant14) Only a single scenario, but a great scenario.<br />
(UnwiseOwl) You wouldn't want to stop thinking for a turn, and it's good for the first few turns, but this one leaves me wanting more.<br />
<br />
<br />
=== Galuldur's First Journey ===<br />
<br />
''While the belligerence of orcs is nothing new, their intensifying attacks on a fledgling colony of elves in Pindir Forest begin to show signs of a deeper malice, forcing Galuldur, the young son of the colony's adventurous founder Galur, to venture out of his forest's friendly trees in search of help. His simple errand quickly turns into a frantic quest to unearth the roots of the mysterious evil threatening his people. As you lead him through unknown lands, Galuldur, forced to match wits with unexpected adversaries at nearly every turn in a desperate attempt to save his world, quickly learns that the world is neither a friendly nor a simple place.''<br />
<br />
'''Author:''' mattsc<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 8-9 scenarios<br />
<br />
'''Version:''' 1.1.1<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Elves<br />
<br />
'''[http://units.wesnoth.org/1.10/Galuldur/en_US/Galuldur.html Custom units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=31895<br />
<br />
<br />
=== Girl unDead ===<br />
<br />
''A little undead girl fights against the Kingdom.'' <br />
<br />
'''Author:''' tapaboy<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 11 playable scenarios<br />
<br />
'''Version: ''' 0.9.20<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default undead,elves<br />
<br />
'''[http://units.wesnoth.org/1.10/Girl_unDead/en_US/Girl_unDead.html Custom Units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37458<br />
<br />
<br />
=== Grnk the Mighty ===<br />
<br />
''All his life, puny little goblin Grnk the Frail had been dreaming about leaving the orcs and starting a better life. When he finally arrives in the human town of Shmaltupp, he realizes that the world is not as black and white as he had imagined. He also discovers that he is no ordinary goblin. Follow Grnk the Frail on his path to becoming Grnk the Mighty.''<br />
<br />
'''Author:''' mattsc<br />
<br />
'''Status:''' Part I complete<br />
<br />
'''Length:''' 13 scenarios<br />
<br />
'''Version:''' 1.0.5<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish, RPG<br />
<br />
'''Faction/Era:''' Default, changing (no standard army building gameplay)<br />
<br />
'''[http://units.wesnoth.org/1.10/Grnk/en_US/Grnk.html Custom units]'''<br />
<br />
'''Required Wesnoth version:''' 1.9.5 or later<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=34970<br />
<br />
<br />
=== Inky's Quest ===<br />
<br />
''The Cuttlefish Campaign<br />
Are the cuttlefish mere beasts or something more? What stories would they tell if they could speak? This story provides one possible answer.The easiest difficulty provides hints for novice players.''<br />
<br />
'''Author:''' Telchin<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 12 scenarios + story-only epilogue<br />
<br />
'''Version:''' 1.3.0<br />
<br />
'''Difficulty:''' Easy<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Custom units (cuttlefish, tentacles, giant clams...). Enemies use both default era units and custom ones.<br />
<br />
'''[http://units.wesnoth.org/1.10/Inky_Quest/en_US/Inky_Quest.html Custom Units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=32501<br />
<br />
<br />
=== Invasion from the Unknown ===<br />
<br />
''Episode I - Seeking the Light: Long after the Fall, the last forest elves are forced to abandon their safe valley, and find themselves resorting to the dark means of necromancy in order to survive the perils and challenges of this new harsh world. May they finally free the Great Continent from its chaos, or perish in the foolish attempt of restoring peace and life to the lands.''<br />
<br />
''Episode II - Armageddon: As the shadow of Chaos covers the entire continent, an assorted group of foolish heroes prepares a counter-attack to the Empire, with one unique goal in their minds: defeat the evil Emperor, whoever it is. Lead these courageous living and non-living warriors to victory, and rediscover lost secrets of the history.''<br />
<br />
'''Author:''' shadowmaster <br />
<br />
'''Maintainer:''' Espreon<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 26 scenarios in two episodes<br />
<br />
'''Version:''' 1.90.6<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Dungeon, Boss battle<br />
<br />
'''Faction/Era:''' Unique. You play Elves and Undead throughout the campaign + in the 2nd part Northerners and Aragwaithi.<br />
<br />
''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Invasion_from_the_Unknown Players´ Review]'''<br />
<br />
'''Note:''' (taptap) Despite its acknowledged flaws (generic hero, plot holes, deus ex machina moments, gameplay issues in the 2nd part) this is undoubtedly the most iconic campaign in UMC. It single-handedly redefines the elvish history and sketches a cosmology for the ages after the fall. With the Chaos empire and its various allies it introduces an era worth of factions to single-player play. At the same time it features some of the most beautiful maps in Wesnoth and stunning art on par with mainline campaigns.<br />
<br />
<br />
=== Invasion of Eliador ===<br />
<br />
''A peaceful island is about to be invaded by unknadd-ons foes travelling towards the eastern shore. It is up to a family of outlaws to warn the island's inhabitants before it's too late.''<br />
<br />
'''Author:''' Sam M. (Genosuke)<br />
<br />
'''Maintainer:''' trewe<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 10 scenarios + epilogue<br />
<br />
'''Version:''' 1.0.4<br />
<br />
'''Style:''' RPG, Skirmish, Puzzle<br />
<br />
'''Difficulty:''' Easy<br />
<br />
'''Faction:''' Default (outlaws)<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=6556<br />
<br />
'''Wiki:''' [[Invasion_of_Eliador]]<br />
<br />
<br />
=== Langrisser Sample Campaign ===<br />
<br />
''The Imperial Knights of the Rayguard Empire have disrupted the peace of the village that was Hein's hometown, seeking only a girl named Liana. Fight to rescue Liana.''<br />
<br />
'''Author:''' Morath<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 1 playable scenario<br />
<br />
'''Version:''' 0.1.0.5<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Elves<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36417&hilit=Langrisser<br />
<br />
'''Wikipedia:''' [http://en.wikipedia.org/wiki/Langrisser What is Langrisser]<br />
<br />
'''Note:''' (Adamant14) Single scenario, different from usual Wesnoth behaviour.<br />
<br />
<br />
=== Legend of Far North ===<br />
<br />
''The tale of the legendary Black Eye Karun,depicting his rise to power, his successes and his brutal assassination.'<br />
<br />
'''Author:''' chak_abhi<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 16 playable scenarios / 1 dialogue only,1 cutscene<br />
<br />
'''Version:''' 1.0.2<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle<br />
<br />
'''Faction/Era:''' Orcs, Trolls, Saurians, Nagas<br />
<br />
'''[http://units.wesnoth.org/1.10/Legend_of_Far_North/en_US/Legend_of_Far_North.html Custom Units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=34769<br />
<br />
<br />
=== Legend of the Invincibles ===<br />
<br />
'''''Part I: Shrouded in Darkness''' (5 chapters, 90 scenarios) - A pair of heroes, after stopping an orcish thread, are outcast into caves, where they have no other choice than to become liches in order to survive. They preserved their original appearance and moral principles, and fight in various skirmishes against evil (although using evil methods sometimes), until the Fall, when they are buried alive under the ashes of the third sun.''<br />
<br />
'''''Part II: Into the Light''' (5 chapters, 110 scenarios) - Long after the Fall, the lich heroes awaken. Searching for more power, they manage to resurrect themselves as living beings, but this time more powerful and ridden of the evil within. But the evil from inside them did not cease to exist, and started a campaign to conquer the world. Stopping the campaign caused an even worse disaster...''<br />
<br />
'''Author:''' Dugi <br />
<br />
'''Status:''' complete<br />
<br />
'''Length:''' 200 (+8 talk-only) scenarios<br />
<br />
'''Version:''' 3.0.1<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' mostly Skirmish and Dungeon (all other styles are present as well, but less frequently)<br />
<br />
'''Faction/Era:''' Elves, Loyalists, Undead, Dwarves; but they advance past their usual maximum level<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Legends_of_the_Invincibles Players´ Review]'''<br />
<br />
'''Note:''' The most unique feature of this campaign is its RPG-like unit development system, enemies drop items units can use, leaders are stronger than most usual units and all units get AMLA (after maximum level advancement) after reaching their maximum level (that is also increased by a load of additional level 4 units).<br />
<br />
<br />
=== Merry Christmas ===<br />
<br />
''Santa's elfs have to travel south into Lintanir Forest to collect Christmas trees.''<br />
<br />
'''Author:''' Desert_Shyde<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 3 playable scenarios<br />
<br />
'''Version:''' 1.1.2<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Custom<br />
<br />
'''[http://units.wesnoth.org/1.10/Merry_Christmas/en_US/merry_christmas.html Custom Units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=32519<br />
<br />
<br />
=== Only Death Behind ===<br />
<br />
''Legends of the Emerald Forest, chapter II: Only Death Behind.''<br />
<br />
''Three ghosts have escaped from the land of the dead. Yet they don't remember anything about their past.''<br />
<br />
''This is an Undead campaign that references certain characters and events from 'The Flight of Drakes', yet it can be played separately.''<br />
<br />
'''Author:''' NoQ<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 7 playable scenarios / 1 talk only<br />
<br />
'''Version:''' 1.0.0<br />
<br />
'''Difficulty:''' Easy<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Undead<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=39119&p=556996#p556996<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Review_by_Adamant14 Player's Review]'''<br />
<br />
'''Note:''' (Adamant14) A short and unusual undead campaign, you play with just a few units. Playable in a few hours, nevertheless it is fun to play.<br />
<br />
=== Panther Lord ===<br />
<br />
''The Imperialists ambitions of pushing into the Sea States have been repeatedly thwarted and now they turn their attentions elsewhere. You are an outcast Darklander now living as a mercenary in the Sea States and the rumors you hear indicate that they will be coming to your people. Though an outcast you do not wish to see them subjugated. The spirit whose friendship caused you to be an outcast has a plan that might allow you to save them.''<br />
<br />
'''Author:''' Velensk <br />
<br />
'''Maintainer:''' Lavender<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 14 scenarios<br />
<br />
'''Version:''' 1.0.2<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Era of Four Moons, Darklanders (+ a wide variety of mercenaries)<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=34318<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Panther_Lord Players´ Review]'''<br />
<br />
<br />
=== Random Campaign ===<br />
<br />
''Gain experience playing the Default Era faction of your choice in a campaign setting''<br />
<br />
'''Author:''' SigurdFireDragon<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 7 playable scenarios<br />
<br />
'''Version:''' 1.0.0<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Age of Heroes, & Era of Legends<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=32922<br />
<br />
'''Note:''' (Author) A 4 scenario version is under the multiplayer button, which lets you choose any era.<br />
Intended for players to gain practice with a faction and learn sound strategies using faction specific adjustments against random factions from the chosen era.<br />
<br />
<br />
=== Rebellion in the North ===<br />
<br />
''A great orcish uprising tends to destabilise the Northlands. As the future Lord Protector of the Northern Alliance you have to crush the rebellion and establish peace again."<br />
<br />
'''Author:''' chak_abhi<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 24 playable scenarios / 3 dialogue only,2 cutscenes<br />
<br />
'''Version:''' 1.1.12<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle<br />
<br />
'''Faction/Era:''' Loyalists, Dwarves, Gryphons, Merfolk<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=33059<br />
<br />
<br />
=== Return of the Monster ===<br />
<br />
''It was time for Amailoss, born from the naga queen's last egg, to leave home. Time for him to grow into a leader in his own right, and eventually become the guardian and leader of another naga city. But along the way, he became friends with an unusual mud-crawler, they met a strange young monster, discovered that a spirit had escaped from an orc prison, and the mystery of that spirit became a grave challenge for Amailoss and the many races in the region....''<br />
<br />
''A naga campaign, involving elves, orcs, saurians, turtle-like races, and some monsters.''<br />
<br />
'''Author:''' SkyOne<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 16 playable, 2 dialog scenarios<br />
<br />
'''Version:''' 0.7.1<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Dungeon<br />
<br />
'''Faction/Era:''' Default with additions. You play a custom naga faction and carapaces (a turtle-like race).<br />
<br />
'''[http://units.wesnoth.org/1.10/Return_of_the_Monster/en_US/Return_of_the_Monster.html Custom units]'''<br />
<br />
'''Required Wesnoth version:''' 1.10.x<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36438<br />
<br />
<br />
=== Return to Noelren ===<br />
<br />
''A story in the first Dark Age of Wesnoth. See how various heroes stick together to shun the threat of black magics, restore the secret kingdom of Noelren and install Garard I on the throne of Wesnoth. This campaign features complex scenarios, unusual objectives and units, emphasizing more on story and adventures than hardcore fighting.''<br />
<br />
'''Author:''' Pyrophorus<br />
<br />
'''Status:''' Complete.<br />
<br />
'''Length:''' 26 scenarios + 7 cut scenes<br />
<br />
'''Version: ''' 0.7.6<br />
<br />
'''Requirements:''' BfW 1.10 (not tested on 1.11)<br />
<br />
'''Difficulty:''' Easy, unbalanced<br />
<br />
'''Style:''' Skirmish, RPG, Large Battle, Simulation<br />
<br />
'''Faction/Era:''' Default + custom units<br />
<br />
'''[http://units.wesnoth.org/1.10/ReturnToNoelren/en_US/ReturnToNoelren.html Custom Units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=34685#p501026<br />
<br />
'''Note:''' (Adamant14) I never saw so much fantastic and new ideas in one single UMC, wow!<br />
<br />
<br />
=== Return to Ruins ===<br />
<br />
''The humble farmers of Vertegris are summoned by Erik the General of Weldyn to put an end to an orcish raiding party. If they knew what would befall their former home... They never would have left. This is a relatively short campaign with 8 scenarios, It is still undergoing changes.''<br />
<br />
'''Author:''' Jeff Stevens (Ulfsark)<br />
<br />
'''Composer:''' Paul Fredericks (paulfredericksmusic.com)<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 7 scenarios + 1 dialogue-only<br />
<br />
'''Version:''' 0.5.1<br />
<br />
'''Difficulty:''' Easy,Normal,Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default,(Loyalists, Outlaws)<br />
<br />
'''Required Wesnoth version:''' 1.10.x <br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37790&sid=9059f18497cda1219f42a626544d0ffd&p=540646#p540646<br />
<br />
'''Note:''' (Adamant14) You play a short campaign with just a few units. Playable in a few hours, nevertheless it is fun to play.<br />
<br />
<br />
=== Salt Wars ===<br />
<br />
''Introductory campaign for the Era of Four Moons.''<br />
<br />
''As an officer of one of the Sea States you must defend your organization from aggressive rivals.''<br />
<br />
'''Author:''' Velensk <br />
<br />
'''Maintainer:''' Lavender<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 5 scenarios<br />
<br />
'''Version:''' 0.2.1<br />
<br />
'''Difficulty:''' Easy<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Era of Four Moons, Sea States<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=31498<br />
<br />
<br />
=== Saving Elensefar ===<br />
<br />
''Meneldur, elvish mariner of Elensefar, is driven to sea by the same orcs who attacked the city. He must gather an army willing to fight for him to regain Elensefar, his adopted homeland.''<br />
<br />
'''Author:''' Turin<br />
<br />
'''Maintainer:''' trewe<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 1 year (around 12 scenarios)<br />
<br />
'''Version:''' 1.5.2<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, RPG, Simulation<br />
<br />
'''Faction:''' Default Era<br />
<br />
'''Forum:''' http://wesnoth.org/forum/viewtopic.php?t=3072&start=0<br />
<br />
'''Wiki:''' [[SeafaringCampaign]]<br />
<br />
'''Note:''' Labeled as Expert, recruit list changes in all scenarios.<br />
<br />
<br />
=== Shameless Crossover Excuse ===<br />
<br />
''Fugitive dark sorcerer Gwiti Ha'atel discovers he has the power to mess with Wesnoth's continuity. His quest for revenge on the NPCs who have used his portraits will lead him through perils untold and in-jokes unnumbered, but shall pale before the horror he finds at his quest's end.''<br />
<br />
'''Author:''' Orcish Shyde, Mountain_King<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 9 scenarios<br />
<br />
'''Version:''' 1.1.0<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction:''' Undead<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=32016&start=15<br />
<br />
<br />
=== Swamplings ===<br />
<br />
''Banished by Yushnak the Ponderer, a tribe of lowly swamp goblins endure in the deadly mire of Pogo Bog. Four centuries before the founding of Wesnoth, this is the story of the goblins' struggle against the intrigues and betrayals of the greater races, and the rise of the first wolf rider.''<br />
<br />
'''Author:''' John Rawlins (boru)<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 14 scenarios<br />
<br />
'''Version:''' 1.1.7n<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction:''' Goblins<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=29784<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Swamplings Players´ Review]'''<br />
<br />
<br />
=== Talentless Mage===<br />
<br />
''Humorous and silly campaign about mage apprentice who has managed to learn only one simple spell in thirty years.''<br />
<br />
'''Author:''' Wonderboy<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 11 playable scenarios + 3 dialogue scenarios<br />
<br />
'''Version:''' 1.1.0<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Noob Faction<br />
<br />
'''[http://units.wesnoth.org/1.10/Talentless_Mage/en_US/Talentless%20Mage.html Custom Units]'''<br />
<br />
'''Forum:''' http://wesnoth.org/forum/viewtopic.php?f=8&t=27608]<br />
<br />
'''[http://wiki.wesnoth.org/index.php?title=Guide_to_UMC_Campaigns/Players_Reviews&action=submit#Talentless_Mage Players´ Review]'''<br />
<br />
<br />
=== The Dark Alliance===<br />
<br />
''Prince Terhar lived two years with elves. Little did he expect what would happen when he returned back to Weldyn.''<br />
<br />
'''Author:''' Wonderboy<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 11 or 10 playable scenarios depending on the branch you take (+ 5 dialogue scenarios)<br />
<br />
'''Version:''' 1.0.3"<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default: Recruit list changes in almost every scenario<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Dark_Alliance/en_US/The%20Dark%20Alliance.html Custom Units]'''<br />
<br />
'''Forum:''' http://wesnoth.org/forum/viewtopic.php?f=8&t=26924<br />
<br />
<br />
=== The Dark Hordes ===<br />
<br />
''Lead fugitive dark sorcerer Gwiti Ha’atel to mastery of the undead hordes.''<br />
<br />
'''Author:''' Circon<br />
<br />
'''Maintainer:''' Various<br />
<br />
'''Status:''' Incomplete/WIP<br />
<br />
'''Length:''' 11/?<br />
<br />
'''Version: '''<br />
<br />
'''Requirements:'''<br />
<br />
'''Difficulty:'''<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default undead<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Dark_Hordes/en_US/The_Dark_Hordes_1.html Custom Units]'''<br />
<br />
'''Walkthrough:''' [[TheDarkHordes]]<br />
<br />
'''Forum:''' [[http://forums.wesnoth.org/viewtopic.php?f=8&t=16576&]]<br />
<br />
<br />
=== The Devil's Flute ===<br />
<br />
''Creona, the well-known assassin, gets a strange job from a strange person. So, in fact, it's no surprise that things take a strange turn...''<br />
<br />
'''Author:''' lipk<br />
<br />
'''Status:''' Complete, unmaintained<br />
<br />
'''Length:''' 10 scenarios<br />
<br />
'''Version:''' 0.1.4c<br />
<br />
'''Difficulty:''' Unbalanced<br />
<br />
'''Style:''' Skirmish, Minigames<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Devils_Flute/en_US/The_Devils_Flute.html Custom Units]'''<br />
<br />
'''Faction/Era:''' Outlaws<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36044<br />
<br />
<br />
=== The Earth's Gut ===<br />
<br />
''The year is 515YW. You are the young dwarven leader Hamel. Your tribe in the caves of Knalga is under pressure from its enemies, and resources are growing scarce. In order to forge the weapons required to resist your enemies, you must set forth and collect what ores and minerals remain.''<br />
<br />
'''Author:''' Anonymissimus<br />
<br />
'''Maintainer:''' Anonymissimus<br />
<br />
'''Status:''' WIP, story is unfinished (I didn't add any scenario since long, but that doesn't mean nothing is added to the campaign. My addons tend to be in good shape and bug-free which means also WIP as I'm updating it since 1.4 days.)<br />
<br />
'''Length:''' 23 scenarios, 5 of which are cutscene only, some others have changing objectives<br />
<br />
'''Version:''' 0.2.14<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Dungeon, Skirmish<br />
<br />
'''Faction/Era:''' Default, dwarves, woses, mages, a few custom units<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Earths_Gut/en_US/the_earths_gut.html Custom units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=26800<br />
<br />
'''Note:''' This campaign is a "Dwarvish dungeon crawler" (It currently contains about as many surface scenarios as underground though.) and is intended to be challenging for experienced players on hard whilst suitably easy on easy. I develop the campaign with the wesnoth development version and I advise to play with that, but it is intended to work almost equally well with the stable wesnoth version (except for features only available in the wesnoth development version).<br />
<br />
<br />
=== The Epic of Vaniyera ===<br />
<br />
''The expansionist Lavinian Legion, led by the Imperator himself, has invaded the northern forests of the Sidhe, or Wild Elves. It is up to Leithan the Thunderblade and his advisor Vaniyera to push its armies back where they came from...''<br />
<br />
'''Author:''' oreb, turin<br />
<br />
'''Maintainer:''' UnwiseOwl<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 6 scenarios<br />
<br />
'''Version:''' 0.9.0<br />
<br />
'''Difficulty:''' Hard (Don't be fooled by "novice level" in the campaign description, this one is very hard.) <br />
<br />
'''Note:''' (Maintainer) Working on this issue, the next release (due at the end of November, hah!) should bring easy difficulty back to the level of a reasonable introduction to the IE, while the hard difficulty will also become slightly easier. With any luck, this will be the last release before version 1.0 of the campaign].<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Imperial Era, Sidhe.<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=19490<br />
<br />
<br />
=== The Fall of Wesnoth ===<br />
<br />
''As the beloved human empire of Wesnoth becomes lazy and arrogant in its peaceful state of happiness, Emperor Dantair demands the creation of another sun in a bid to destroy all evil. Or is it all for a different purpose? A man named Alitar sees it that way, and now he must survive the most evil inhabited lands if he is to stop chaos from rising, and Wesnoth from falling... This is the story of The Fall of Wesnoth.''<br />
<br />
'''Author:''' Pewskeepski<br />
<br />
'''Status:''' 1st part complete, 2nd WIP.<br />
<br />
'''Length:''' 10 playable scenarios<br />
<br />
'''Version:''' 1.0.8<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Outlaws<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Fall_of_Wesnoth/en_US/The_Fall_of_Wesnoth-1.html Custom units]'''<br />
<br />
<br />
=== The Flight of Drakes ===<br />
<br />
''Legends of the Emerald Forest, chapter I: The Flight of Drakes.<br />
<br />
''Follow drake king Klader on his quest to find the Crown of Light, a legendary artifact from pre-historic times.''<br />
<br />
''This campaign is the first chapter of a trilogy; the second chapter is an Undead campaign and it's called 'Only Death Behind'.''<br />
<br />
'''Author:''' NoQ<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 7 playable scenarios / 2 talk only<br />
<br />
'''Version:''' 1.1.2<br />
<br />
'''Difficulty:''' Easy<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Drakes<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37981<br />
<br />
=== The Founding of Borstep ===<br />
<br />
''The chieftain of your tribe has become decadent and weak. Take over, and lead your people to a better home--whether it is already occupied or not. The Northlands in year 9W are a barbaric place, but anyone who stands in your way will learn the power of orcs!'' <br />
<br />
'''Author:''' Beetlenaut<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 10 and 1 dialogue only<br />
<br />
'''Version:''' 1.1.1b<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Northerners<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Founding_of_Borstep/en_US/The_Founding_of_Borstep.html Custom units]'''<br />
<br />
'''Note:''' (Kanzil) I find the protagonist hard to sympathise with. Also, most scenarios contain interesting twists. For example, in one, each time you killed a boar it gives you extra health.<br />
<br />
'''Note:''' (beetlenaut--author) In most Orcish campaigns the leader is heroic or just wants peace. Krag-Ubor wants plunder and battle like all enemy Orcs in other campaigns. I '''hope''' you don't sympathize too strongly, but I don't think you need to in order to enjoy the game play.<br />
<br />
<br />
=== The Legend Begins ===<br />
<br />
''The tale of Jahin, the greatest hero the land of Arkenova, or perhaps the world of Irdya, had ever known. Watch his legend unfold before your very eyes.''<br />
<br />
'''Author:''' Tahsin Jahin Khalid (Lord-Knightmare)<br />
<br />
'''Status:''' First two episodes completed out of a planned three. You can play the first two episodes. Updated monthly.<br />
<br />
'''Length:''' Approximately 72 scenarios when completed.<br />
----<br />
Episode 1 - 28 scenarios<br />
----<br />
Episode 2 - 26 scenarios<br />
----<br />
Episode 3 - (still in development)<br />
----<br />
'''Version:''' 0.2.7<br />
<br />
'''Requirements:''' ''War of Legends'' is required to be installed. Latest version recommended.<br />
<br />
'''Difficulty:''' Intermediate<br />
<br />
'''Style:''' skirmishes, survivals, large battles, dungeons, boss battles, simulations,<br />
<br />
'''Faction/Era:''' Default, War of Legends, Custom Units<br />
<br />
'''Custom units:''' Sorry, apparently the [units.wesnoth.org Units Database] didn't generate one for this campaign...<br />
<br />
'''Forum:''' [http://forums.wesnoth.org/viewtopic.php?f=8&t=37424 Click Here]<br />
<br />
'''Notes:'''<br />
<br />
----<br />
<br />
=== The Library of Kratemaqht ===<br />
<br />
''An ancient story from the old continent.''<br />
<br />
'''Author:''' Rich Marinaccio (cephalo)<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 17 scenarios<br />
<br />
'''Version:''' 1.0.0<br />
<br />
'''Difficulty:''' Unbalanced (some scenarios are Easy - some rather Hard) <br />
<br />
'''Style:''' Skirmish, RPG<br />
<br />
'''Faction/Era:''' Loyalists and custom units.<br />
<br />
'''[http://units.wesnoth.org/1.10/Library_Of_Kratemaqht/en_US/The_Library_Of_Kratemaqht.html Custom units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37798<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#The_Library_of_Kratemaqht Players´ Review]'''<br />
<br />
'''Notes:''' (Adamant14) This campaign has a thought-out story, shows a great love for detail;<br />
It includes a great custom Dragon, some brilliant custom images (fire, burning houses, burning forest) that makes the scenery / maps look very nice.<br />
<br />
<br />
=== The Militia ===<br />
<br />
''The Travels of a group of Peasants and their Friends; a level 0 campaign that does not focus on a singular hero.''<br />
<br />
'''Author:''' Desert_Shyde<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 15 scenarios<br />
<br />
'''Version:''' 1.5.1<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Militia/en_US/the_militia.html Custom Units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?t=30294<br />
<br />
<br />
=== The Roar of the Woses ===<br />
<br />
''When the construction of a dam threatens the existence of her home, Kylix is forced on a journey to stop it.''<br />
<br />
'''Author:''' Alarantalara<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 10-11 scenarios + 1 dialogue-only<br />
<br />
'''Version:''' 1.2.7<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default with Additions (primarily Saurians, Nagas, Woses)<br />
<br />
'''[http://units.wesnoth.org/1.10/Roar_of_the_Woses/en_US/Swamp_Rage.html Custom Units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=29830<br />
<br />
'''Note:''' (author) Potentially unbalanced on Hard difficulty due to experiments with non-standard ways to increase difficulty. This issue does not exist on the lower difficulty levels.<br />
<br />
<br />
=== The Three Elves ===<br />
<br />
''Three elves have just begun their adventure in the northern swampland. Will they become heroes or will they be responsible for another undead expansion?''<br />
<br />
'''Author:''' Stanislav Hoferek<br />
<br />
'''Maintainer:''' trewe<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 8 scenarios + 2 dialogue<br />
<br />
'''Version:''' 0.9<br />
<br />
'''Difficulty:''' Easy<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction:''' Default (Elves)<br />
<br />
'''Forum:''' (does it have one?)<br />
<br />
<br />
=== The Sojournings of Grog ===<br />
<br />
''Grog (as starred in Under the Burning Suns) goes home.''<br />
<br />
'''Author:''' Peter Christopher, Thomas Hockings <br />
<br />
'''Maintainer:''' Elvish_Hunter<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 18 playable scenarios in 2 parts<br />
<br />
'''Version:''' 3.0.1<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Dungeon, Large Battle<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Sojournings_of_Grog/en_US/The_Sojournings_of_Grog.html Custom units]'''<br />
<br />
'''Faction/Era:''' Default. Most of the time you play trolls and some desert elves accompanying Grog.<br />
<br />
<br />
=== The Unstoppable Legion ===<br />
<br />
''Horseback campaign. The kingdom of Suveran, far away from Wesnoth, is under attack. Only Deuterus, a Great Druid, knows their weakness and only Viktor, a young noble, dares go on the quest to stop them.''<br />
<br />
'''Author:''' Chris Neville-Smith (Chris NS)<br />
<br />
'''Maintainer:''' Chris Neville-Smith (Chris NS)<br />
<br />
'''Status:''' WIP<br />
<br />
'''Length:''' Currently 15 playable sceanrios, including a fork of three paths near the beginning, and another fork of two paths later on.<br />
<br />
'''Version:''' 0.8.7<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Mainly Skirmish<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Unstoppable_Legion/en_US/The_Unstoppable_Legion.html Custom units]'''<br />
<br />
'''Faction/Era:''' Play mounted units, including expanded Cavalryman line, and completely new Bowrider line. Joined later by Dwarves. Main enemies are the dark fighters and dark cultists.<br />
<br />
<br />
=== The White Troll ===<br />
<br />
''The story of a white troll whelp with strange magic powers, who is raised in an elvish village.''<br />
<br />
'''Author:''' Wesnoth Italian Forum<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 8 scenarios<br />
<br />
'''Version:''' 0.7.5<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default: you play with elves and trolls. Also features custom units with special advancements and abilities.<br />
<br />
'''[http://units.wesnoth.org/1.10/White_Troll/en_US/white_troll.html Custom Units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=38828<br />
<br />
<br />
=== To Lands Unknown ===<br />
<br />
''This is the story of Mehir, the Summoner, and his journey to lands unknown.''<br />
<br />
'''Author:''' inferno8<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 20 scenarios, 4 dialogue only<br />
<br />
'''Version:''' 1.6.0<br />
<br />
'''Difficulty:''' Intermediate (Era of Magic)<br />
<br />
'''Style''': Skirmish, Dungeon<br />
<br />
'''Era:''' Era of Magic<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=31799<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#To_Lands_Unknown Players´ Review]'''<br />
<br />
<br />
=== Up from Slavery ===<br />
<br />
''The Orcei are captives in the imperial city of Lavinium, gladiators performing for the emperor Optus Maximus. All it will take, however, is one orc to lead his people to freedom. The Samnis called Sparxus may be that orc.''<br />
<br />
'''Author:''' turin<br />
<br />
'''Maintainer:''' UnwiseOwl<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 7 scenarios<br />
<br />
'''Version:''' 0.6.0<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Arena (= No recruit, small group gladiator fights)<br />
<br />
'''Faction/Era:''' Imperial Era, Orcei Gladiatores<br />
<br />
'''Note:''' (Maintainer) At some point, I am intending to completely re-work this campaign to be a multi-player campaign, with one side led by Sparxus and one by Gravirivus. If anyone would like to take this on or has ideas for how to accomplish this, let us know. Nevertheless, its playable as a single player campaign now with some nice ideas that could be developed further.]<br />
<br />
<br />
=== Warmaster ===<br />
<br />
''One day the scout of your king brings a mysterious little stone, called Zrai-Stone, back from one of his trips. Soon that stone causes a lot of trouble...''<br />
<br />
'''Author:''' Conkinator<br />
<br />
'''Maintainer:''' trewe<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 16 battle + 2 bonus + 1 epilogue scenarios<br />
<br />
'''Version:''' 1.3.5<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Faction:''' Default (loyalists)<br />
<br />
'''Style:''' Skirmish, Survival<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=15527<br />
<br />
<br />
=== Way of Dragon ===<br />
<br />
''The story of what might happen if a person against his will transform into a dragon...''<br />
<br />
'''Author:''' DrakeDragon<br />
<br />
'''Status:''' Complete <br />
<br />
'''Length:''' 7 playable scenarios + 1 dialogue-only<br />
<br />
'''Version:''' 1.2.0<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish/RPG<br />
<br />
'''Faction/Era:''' Default Loyalists<br />
<br />
'''Forum:''' [http://forums.wesnoth.org/viewtopic.php?f=8&t=37876 Wesnoth Forum] [http://uporoom.ru/index.php/topic,179.0.html Russian Forum]<br />
<br />
'''Note:''' (Adamant14) Promising short campaign, you play with just a few units.<br />
<br />
== Battle for Wesnoth 1.11.x - development ==<br />
<br />
''Campaigns available in the 1.11.x development version.''<br />
<br />
''Please note: Battle for Wesnoth 1.11.0 features a bug that messes up the selection of difficulty levels.''<br />
<br />
<br />
=== A Gryphon's Tale ===<br />
<br />
''A Gryphon's Tale tells the story of a community of civilized Gryphons, and of Neliflua, an ambitious young female among them who falls into unusual circumstances.''<br />
<br />
'''Author:''' Ringcaat/Dwarven_Void<br />
<br />
'''Status:''' One branch complete, most incomplete<br />
<br />
'''Length:''' 11-12 scenarios (branch dependent)<br />
<br />
'''Version:''' 0.6.12<br />
<br />
'''Difficulty:''' Easy<br />
<br />
'''Style:''' RPG/minigames<br />
<br />
'''Faction/Era:''' Gryphon/Orc<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=2906&start=195&<br />
<br />
<br />
=== After the Storm ===<br />
<br />
''Follow the journey of Galas and his band following the events of <i>Invasion from the Unknown</i>''<br />
<br />
'''Author:''' shadowmaster/ShikadiLord<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 3 episodes of 13 scenarios each, some of which are multi-part<br />
<br />
'''Version:''' 0.9.5<br />
<br />
'''Difficulty:''' Medium-hard<br />
<br />
'''Style:''' Skirmish, Boss Battle, Dungeon<br />
<br />
'''Faction/Era:''' Many custom units<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=32091<br />
<br />
'''Note:''' (vultraz) Long, very enjoyable campaign with great story. (Knyghtmare) The best UMC campaign ever!<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#After_the_Storm Players´ Review]'''<br />
<br />
<br />
=== Antar, Son of Rheor ===<br />
<br />
''This is the story about a young Lord and his first mission; sent by his father the young Lord Antar has to relieve his neighbours; he has to convince the Elves and Dwarves to ally him; he has to fight against hordes of Orcs and Endless Undead; and finally he has to defeat Mal Kazur, the mastermind who is behind all the evil.''<br />
<br />
'''Author:''' Adamant14<br />
<br />
'''Status:''' WIP<br />
<br />
'''Length:''' 9 playable scenarios / 1 cutscene <br />
<br />
'''Version:''' 0.9.9<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Loyalists and Elves (feat. fencer as main hero + various allies)<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36075<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Antar.2C_Son_of_Rheor Players´ Review]'''<br />
<br />
'''Note:''' (Adamant14) The campaign did not work with BfW version 1.11.0, or BfW version 1.11.1, so please use BfW version 1.11.2 or later!<br />
<br />
<br />
=== A Song of Fire ===<br />
<br />
''''''Part I: The Last War''' - In a long-forgotten era, at the heart of the Great Continent, an ancestral evil is awakened, threatening to destroy the whole world. Follow young Myra in the war that will alter the future of Irdya and its peoples forever.''<br />
<br />
''''''Part II: Towards the Rising Sun''' - After the vicious Last War, Myra has become the new leader of Aragwaithi and Windsong alike. Albeit young and shaken by many losses, she must steel herself to lead her people through the vast and hostile Hannuk Steppes. However, her journey will take them all farther than in their wildest dreams. Furthermore, Myra must deal with the evil influence of the mysterious red gem she found after the last battle.''<br />
<br />
''''''Part III: Raging Skies''' - The refugees have finally found a new home: families are built, allies are made and, for the first time in years, Myra and her friends know peace. However, when everything seems normal, ambition and thirst for power cause the break out of a continental war. And, amidst this new storm, an old foe rises agan, more powerful than ever. Witness the end of the song of Irdya's first great heroine.''<br />
<br />
'''Author:''' revansurik<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 36 scenarios<br />
<br />
'''Version:''' 0.3.4<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle<br />
<br />
'''Faction/Era:''' Default+War of Legends<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=38210<br />
<br />
<br />
=== Bad Moon Rising ===<br />
<br />
''An expedition to gather treasure from the cold north sets off compounding disaster.''<br />
<br />
'''Author:''' Doofus-01<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 20 scenarios<br />
<br />
'''Version:''' 1.5.8<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Archaic Era<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=31348<br />
<br />
<br />
=== Birth of a Lich ===<br />
<br />
''This is the life story of the dreaded lich Malifor, his struggle as a mage outcast, the orcish conquest of the northlands and his transformation to quench the thirst for revenge''<br />
<br />
'''Author:''' chak_abhi<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 12 playable scenarios / 2 dialogue only<br />
<br />
'''Version:''' 1.0.3<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle, Dungeon<br />
<br />
'''Faction/Era:''' Human outlaws, dwarves, undead<br />
<br />
'''[http://units.wesnoth.org/1.10/Birth_of_a_Lich/en_US/Birth_of_a_Lich.html Custom Units]<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37057<br />
<br />
<br />
=== Coming of the Storm ===<br />
<br />
''A new recruit joins the imperial army, eager to change the world and see combat. Little does he realise just how much action he will get and where his journey will take him. ''<br />
<br />
'''Author:''' TrashMan<br />
<br />
'''Status:''' WIP<br />
<br />
'''Length:''' 26 playable scenarios / 4 dialogue only<br />
<br />
'''Version:''' 1.2.1<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle, Dungeon<br />
<br />
'''Faction/Era:''' Default<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=23361<br />
<br />
<br />
=== Fate of a Princess ===<br />
<br />
''Part I: Baldres, a notorious robber baron, flees Wesnoth with his followers and sets off into the northlands to evade the king's justice. The baron's deeds and misdeeds are to change the balance of power between orcs and non-orcs throughout the northlands, and will carry consequences long after his eventual death.''<br />
<br />
''Part II: The Greenwood elves face a crisis which demands the return of the queen's estranged half-elven half-sister, Baldres' daughter. Two brave young elves must make a perilous journey to find her and bring her back to her former home. If they fail, the whole northlands will be engulfed in war with the resurgent orcs...''<br />
<br />
'''Author:''' SkyOne, mich, simonsmith<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 26-29 scenarios (some dialogue-only), 2 parts<br />
<br />
'''Version:''' 0.9.17<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Dungeon<br />
<br />
'''Faction/Era:''' Default with additions. You play two different, unique cross-faction combinations in each part.<br />
<br />
'''[http://units.wesnoth.org/1.10/Fate_of_a_Princess/en_US/Fate_of_a_Princess.html Custom units]'''<br />
<br />
'''Required Wesnoth version:''' 1.9.12 or later<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=26327<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Fate_of_a_princess Players´ Review]'''<br />
<br />
<br />
=== Invasion from the Unknown ===<br />
<br />
''Episode I - Seeking the Light: Long after the Fall, the last forest elves are forced to abandon their safe valley, and find themselves resorting to the dark means of necromancy in order to survive the perils and challenges of this new harsh world. May they finally free the Great Continent from its chaos, or perish in the foolish attempt of restoring peace and life to the lands.''<br />
<br />
''Episode II - Armageddon: As the shadow of Chaos covers the entire continent, an assorted group of foolish heroes prepares a counter-attack to the Empire, with one unique goal in their minds: defeat the evil Emperor, whoever it is. Lead these courageous living and non-living warriors to victory, and rediscover lost secrets of the history.''<br />
<br />
'''Author:''' shadowmaster <br />
<br />
'''Maintainer:''' Espreon<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 26 scenarios in two episodes<br />
<br />
'''Version:''' 1.90.6<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Dungeon, Boss battle<br />
<br />
'''Faction/Era:''' Unique. You play Elves and Undead throughout the campaign + in the 2nd part Northerners and Aragwaithi.<br />
<br />
''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Invasion_from_the_Unknown Players´ Review]'''<br />
<br />
'''Note:''' (taptap) Despite its acknowledged flaws (generic hero, plot holes, deus ex machina moments, gameplay issues in the 2nd part) this is undoubtedly the most iconic campaign in UMC. It single-handedly redefines the elvish history and sketches a cosmology for the ages after the fall. With the Chaos empire and its various allies it introduces an era worth of factions to single-player play. At the same time it features some of the most beautiful maps in Wesnoth and stunning art on par with mainline campaigns.<br />
<br />
<br />
=== Invasion of Eliador ===<br />
<br />
''A peaceful island is about to be invaded by unknadd-ons foes travelling towards the eastern shore. It is up to a family of outlaws to warn the island's inhabitants before it's too late.''<br />
<br />
'''Author:''' Sam M. (Genosuke)<br />
<br />
'''Maintainer:''' trewe<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 10 scenarios + epilogue<br />
<br />
'''Version:''' 1.0.4<br />
<br />
'''Style:''' RPG, Skirmish, Puzzle<br />
<br />
'''Difficulty:''' Easy<br />
<br />
'''Faction:''' Default (outlaws)<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=6556<br />
<br />
'''Wiki:''' [[Invasion_of_Eliador]]<br />
<br />
<br />
=== Legend of Far North ===<br />
<br />
''The tale of the legendary Black Eye Karun,depicting his rise to power, his successes and his brutal assassination.'<br />
<br />
'''Author:''' chak_abhi<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 16 playable scenarios / 1 dialogue only,1 cutscene<br />
<br />
'''Version:''' 1.0.2<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle<br />
<br />
'''Faction/Era:''' Orcs, Trolls, Saurians, Nagas<br />
<br />
'''[http://units.wesnoth.org/1.10/Legend_of_Far_North/en_US/Legend_of_Far_North.html Custom Units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=34769<br />
<br />
<br />
=== Legend of the Invincibles ===<br />
<br />
'''''Part I: Shrouded in Darkness''' (5 chapters, 90 scenarios) - A pair of heroes, after stopping an orcish thread, are outcast into caves, where they have no other choice than to become liches in order to survive. They preserved their original appearance and moral principles, and fight in various skirmishes against evil (although using evil methods sometimes), until the Fall, when they are buried alive under the ashes of the third sun.''<br />
<br />
'''''Part II: Into the Light''' (5 chapters, 110 scenarios) - Long after the Fall, the lich heroes awaken. Searching for more power, they manage to resurrect themselves as living beings, but this time more powerful and ridden of the evil within. But the evil from inside them did not cease to exist, and started a campaign to conquer the world. Stopping the campaign caused an even worse disaster...''<br />
<br />
'''Author:''' Dugi <br />
<br />
'''Status:''' complete<br />
<br />
'''Length:''' 200 (+8 talk-only) scenarios<br />
<br />
'''Version:''' 3.0.1<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' mostly Skirmish and Dungeon (all other styles are present as well, but less frequently)<br />
<br />
'''Faction/Era:''' Elves, Loyalists, Undead, Dwarves; but they advance past their usual maximum level<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Legends_of_the_Invincibles Players´ Review]'''<br />
<br />
'''Note:''' The most unique feature of this campaign is its RPG-like unit development system, enemies drop items units can use, leaders are stronger than most usual units and all units get AMLA (after maximum level advancement) after reaching their maximum level (that is also increased by a load of additional level 4 units).<br />
<br />
<br />
=== Merry Christmas ===<br />
<br />
''Santa's elfs have to travel south into Lintanir Forest to collect Christmas trees.''<br />
<br />
'''Author:''' Desert_Shyde<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 3 playable scenarios<br />
<br />
'''Version:''' 1.1.2<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Custom<br />
<br />
'''[http://units.wesnoth.org/1.10/Merry_Christmas/en_US/merry_christmas.html Custom Units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=32519<br />
<br />
<br />
=== Only Death Behind ===<br />
<br />
''Legends of the Emerald Forest, chapter II: Only Death Behind.''<br />
<br />
''Three ghosts have escaped from the land of the dead. Yet they don't remember anything about their past.''<br />
<br />
''This is an Undead campaign that references certain characters and events from 'The Flight of Drakes', yet it can be played separately.''<br />
<br />
'''Author:''' NoQ<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 7 playable scenarios / 1 talk only<br />
<br />
'''Version:''' 1.0.0<br />
<br />
'''Difficulty:''' Easy<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Undead<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=39119&p=556996#p556996<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Review_by_Adamant14 Player's Review]'''<br />
<br />
'''Note:''' (Adamant14) A short and unusual undead campaign, you play with just a few units. Playable in a few hours, nevertheless it is fun to play.<br />
<br />
<br />
=== Rebellion in the North ===<br />
<br />
''A great orcish uprising tends to destabilise the Northlands. As the future Lord Protector of the Northern Alliance you have to crush the rebellion and establish peace again."<br />
<br />
'''Author:''' chak_abhi<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 24 playable scenarios / 3 dialogue only,2 cutscenes<br />
<br />
'''Version:''' 1.1.12<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle<br />
<br />
'''Faction/Era:''' Loyalists, Dwarves, Gryphons, Merfolk<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=33059<br />
<br />
<br />
=== Ruthless ===<br />
<br />
''A bard (an aging criminal) is walking in wasteland. Nothing but two hands in his pockets, and nothing but stones around. Suddenly he sees a knight on errand--a dangerous opponent, especially in broad daylight. The two strangers are soon sitting by the campfire, and the bard is telling a story.<br />
(Beginner level, 10+ fights).''<br />
<br />
'''Author:''' homunculus<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 12 playable scenarios + 5 cutscene scenarios<br />
<br />
'''Version:''' 1.0.4<br />
<br />
'''Difficulty:''' Normal <br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default (Orcs)<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37874<br />
<br />
'''Note:''' (Adamant14) Recommendable campaign, with smart unusual ideas and a good detailed story.<br />
You fight with few units on small but perfect maps. About the difficulty: The author describes his campaign as 'beginner level', but for me the difficulty is rather NORMAL than EASY.<br />
<br />
<br />
=== Saving Elensefar ===<br />
<br />
''Meneldur, elvish mariner of Elensefar, is driven to sea by the same orcs who attacked the city. He must gather an army willing to fight for him to regain Elensefar, his adopted homeland.''<br />
<br />
'''Author:''' Turin<br />
<br />
'''Maintainer:''' trewe<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 1 year (around 12 scenarios)<br />
<br />
'''Version:''' 1.5.2<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, RPG, Simulation<br />
<br />
'''Faction:''' Default Era<br />
<br />
'''Forum:''' http://wesnoth.org/forum/viewtopic.php?t=3072&start=0<br />
<br />
'''Wiki:''' [[SeafaringCampaign]]<br />
<br />
'''Note:''' Labeled as Expert, recruit list changes in all scenarios.<br />
<br />
<br />
=== Soldier of Wesnoth ===<br />
<br />
''697 YW. More than two decades after King Konrad II died leaving no heir, three noble Houses vie for the control of the kingdom, which, still feeling the damages of Mal-Ravanal's invasion, sees its glory and power slowly fade away. Meanwhile, in the southern province of Kerlath, a young peasant called Addraryn sets out to join Weldyn's Army, in order to be able to marry the fair Elywen. However, his travel will suffer some very unexpected twists which will lead him to the main stages of the Second Civil War. Journey across Wesnoth, witness its decadence, meet old heroes and save the kingdom from the enemies within and from the formidable Lion of the Desert...''<br />
<br />
'''Author:''' revansurik<br />
<br />
'''Status:''' Completed<br />
<br />
'''Length:''' 31 scenarios<br />
<br />
'''Version:''' 1.0.0<br />
<br />
'''Difficulty:''' Normal <br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default+Khalifate+Custom Units<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=39123<br />
<br />
<br />
=== Sven's Adventure ===<br />
<br />
''A young adventurer's quest to retrieve the fabled, and dangerous, Spellbook of Death.''<br />
<br />
'''Author:''' kpearce<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 19 scenarios<br />
<br />
'''Version:''' 0.1.1<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' RPG, Dungeon, Boss Battle<br />
<br />
'''Faction/Era:''' Default (mixed factions)<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=39080<br />
<br />
<br />
=== The Devil's Flute ===<br />
<br />
''Creona, the well-known assassin, gets a strange job from a strange person. So, in fact, it's no surprise that things take a strange turn...''<br />
<br />
'''Author:''' lipk<br />
<br />
'''Status:''' Complete, unmaintained<br />
<br />
'''Length:''' 10 scenarios<br />
<br />
'''Version:''' 0.1.4c<br />
<br />
'''Difficulty:''' Unbalanced<br />
<br />
'''Style:''' Skirmish, Minigames<br />
<br />
'''Faction/Era:''' Outlaws<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36044<br />
<br />
<br />
=== The Earth's Gut ===<br />
<br />
''The year is 515YW. You are the young dwarven leader Hamel. Your tribe in the caves of Knalga is under pressure from its enemies, and resources are growing scarce. In order to forge the weapons required to resist your enemies, you must set forth and collect what ores and minerals remain.''<br />
<br />
'''Author:''' Anonymissimus<br />
<br />
'''Maintainer:''' Anonymissimus<br />
<br />
'''Status:''' WIP, story is unfinished (I didn't add any scenario since long, but that doesn't mean nothing is added to the campaign. My addons tend to be in good shape and bug-free which means also WIP as I'm updating it since 1.4 days.)<br />
<br />
'''Length:''' 23 scenarios, 5 of which are cutscene only, some others have changing objectives<br />
<br />
'''Version:''' 0.2.14<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Dungeon, Skirmish<br />
<br />
'''Faction/Era:''' Default, dwarves, woses, mages, a few custom units<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Earths_Gut/en_US/the_earths_gut.html Custom units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=26800<br />
<br />
'''Note:''' This campaign is a "Dwarvish dungeon crawler" (It currently contains about as many surface scenarios as underground though.) and is intended to be challenging for experienced players on hard whilst suitably easy on easy. I develop the campaign with the wesnoth development version and I advise to play with that, but it is intended to work almost equally well with the stable wesnoth version (except for features only available in the wesnoth development version).<br />
<br />
<br />
=== The Epic of Vaniyera ===<br />
<br />
''The expansionist Lavinian Legion, led by the Imperator himself, has invaded the northern forests of the Sidhe, or Wild Elves. It is up to Leithan the Thunderblade and his advisor Vaniyera to push its armies back where they came from...''<br />
<br />
'''Author:''' oreb, turin<br />
<br />
'''Maintainer:''' UnwiseOwl<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 6 scenarios<br />
<br />
'''Version:''' 0.9.0<br />
<br />
'''Difficulty:''' Hard (Don't be fooled by "novice level" in the campaign description, this one is very hard.) <br />
<br />
'''Note:''' (Maintainer) Working on this issue, the next release (due at the end of November, hah!) should bring easy difficulty back to the level of a reasonable introduction to the IE, while the hard difficulty will also become slightly easier. With any luck, this will be the last release before version 1.0 of the campaign].<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Imperial Era, Sidhe.<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=19490<br />
<br />
<br />
=== The Flight of Drakes ===<br />
<br />
''Legends of the Emerald Forest, chapter I: The Flight of Drakes.<br />
<br />
''Follow drake king Klader on his quest to find the Crown of Light, a legendary artifact from pre-historic times.''<br />
<br />
''This campaign is the first chapter of a trilogy; the second chapter is an Undead campaign and it's called 'Only Death Behind'.''<br />
<br />
'''Author:''' NoQ<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 7 playable scenarios / 2 talk only<br />
<br />
'''Version:''' 1.1.2<br />
<br />
'''Difficulty:''' Easy<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Drakes<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37981<br />
<br />
<br />
=== The Legend Begins ===<br />
<br />
''The tale of Jahin, the greatest hero the land of Arkenova, or perhaps the world of Irdya, had ever known. Watch his legend unfold before your very eyes.''<br />
<br />
'''Author:''' Tahsin Jahin Khalid (Lord-Knightmare)<br />
<br />
'''Status:''' First two episodes completed out of a planned three. You can play the first two episodes. Updated monthly.<br />
<br />
'''Length:''' Approximately 72 scenarios when completed.<br />
----<br />
Episode 1 - 28 scenarios<br />
----<br />
Episode 2 - 26 scenarios<br />
----<br />
Episode 3 - (still in development)<br />
----<br />
'''Version:''' 0.2.7<br />
<br />
'''Requirements:''' ''War of Legends'' is required to be installed. Latest version recommended.<br />
<br />
'''Difficulty:''' Intermediate<br />
<br />
'''Style:''' skirmishes, survivals, large battles, dungeons, boss battles, simulations,<br />
<br />
'''Faction/Era:''' Default, War of Legends, Custom Units<br />
<br />
'''Custom units:''' Sorry, apparently the [units.wesnoth.org Units Database] didn't generate one for this campaign...<br />
<br />
'''Forum:''' [http://forums.wesnoth.org/viewtopic.php?f=8&t=37424 Click Here]<br />
<br />
'''Notes:'''<br />
<br />
<br />
=== The Library of Kratemaqht ===<br />
<br />
''An ancient story from the old continent.''<br />
<br />
'''Author:''' Rich Marinaccio (cephalo)<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 17 scenarios<br />
<br />
'''Version:''' 1.0.0<br />
<br />
'''Difficulty:''' Unbalanced (some scenarios are Easy - some rather Hard) <br />
<br />
'''Style:''' Skirmish, RPG<br />
<br />
'''Faction/Era:''' Loyalists and custom units.<br />
<br />
'''[http://units.wesnoth.org/1.10/Library_Of_Kratemaqht/en_US/The_Library_Of_Kratemaqht.html Custom units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37798<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#The_Library_of_Kratemaqht Players´ Review]'''<br />
<br />
'''Notes:''' (Adamant14) This campaign has a thought-out story, shows a great love for detail;<br />
It includes a great custom Dragon, some brilliant custom images (fire, burning houses, burning forest) that makes the scenery / maps look very nice.<br />
<br />
<br />
=== The Militia ===<br />
<br />
''The Travels of a group of Peasants and their Friends; a level 0 campaign that does not focus on a singular hero.''<br />
<br />
'''Author:''' Desert_Shyde<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 15 scenarios<br />
<br />
<br />
'''Version:''' 1.5.2<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Militia/en_US/the_militia.html Custom Units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?t=30294<br />
<br />
<br />
=== The Roar of the Woses ===<br />
<br />
''When the construction of a dam threatens the existence of her home, Kylix is forced on a journey to stop it.''<br />
<br />
'''Author:''' Alarantalara<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 10-11 scenarios + 1 dialogue-only<br />
<br />
'''Version:''' 1.2.7<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default with Additions (primarily Saurians, Nagas, Woses)<br />
<br />
'''[http://units.wesnoth.org/1.10/Roar_of_the_Woses/en_US/Swamp_Rage.html Custom Units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=29830<br />
<br />
'''Note:''' (author) Potentially unbalanced on Hard difficulty due to experiments with non-standard ways to increase difficulty. This issue does not exist on the lower difficulty levels.<br />
<br />
<br />
=== The Three Elves ===<br />
<br />
''Three elves have just begun their adventure in the northern swampland. Will they become heroes or will they be responsible for another undead expansion?''<br />
<br />
'''Author:''' Stanislav Hoferek<br />
<br />
'''Maintainer:''' trewe<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 8 scenarios + 2 dialogue<br />
<br />
'''Version:''' 0.9<br />
<br />
'''Difficulty:''' Easy<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction:''' Default (Elves)<br />
<br />
'''Forum:''' (does it have one?)<br />
<br />
<br />
=== The Sojournings of Grog ===<br />
<br />
''Grog (as starred in Under the Burning Suns) goes home.''<br />
<br />
'''Author:''' Peter Christopher, Thomas Hockings <br />
<br />
'''Maintainer:''' Elvish_Hunter<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 18 playable scenarios in 2 parts<br />
<br />
'''Version:''' 3.0.1<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Dungeon, Large Battle<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Sojournings_of_Grog/en_US/The_Sojournings_of_Grog.html Custom units]'''<br />
<br />
'''Faction/Era:''' Default. Most of the time you play trolls and some desert elves accompanying Grog.<br />
<br />
<br />
=== To Lands Unknown ===<br />
<br />
''This is the story of Mehir, the Summoner, and his journey to lands unknown.''<br />
<br />
'''Author:''' inferno8<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 20 scenarios, 4 dialogue only<br />
<br />
'''Version:''' 1.6.0<br />
<br />
'''Difficulty:''' Intermediate (Era of Magic)<br />
<br />
'''Style''': Skirmish, Dungeon<br />
<br />
'''Era:''' Era of Magic<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=31799<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#To_Lands_Unknown Players´ Review]'''<br />
<br />
<br />
=== Warmaster ===<br />
<br />
''One day the scout of your king brings a mysterious little stone, called Zrai-Stone, back from one of his trips. Soon that stone causes a lot of trouble...''<br />
<br />
'''Author:''' Conkinator<br />
<br />
'''Maintainer:''' trewe<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 16 battle + 2 bonus + 1 epilogue scenarios<br />
<br />
'''Version:''' 1.3.5<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Faction:''' Default (loyalists)<br />
<br />
'''Style:''' Skirmish, Survival<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=15527<br />
<br />
<br />
== [[Guide_to_UMC_Campaigns/Players_Reviews|Player Reviews]] ==<br />
<br />
[[Category:Campaigns|*]]</div>Lipkhttps://wiki.wesnoth.org/index.php?title=Player_UMC_Reviews&diff=51635Player UMC Reviews2013-07-12T21:16:38Z<p>Lipk: Alphabetical order</p>
<hr />
<div>''This is a place where you can add your reviews for the current (1.10.x/1.11.x) UMC campaigns. Please edit, it is a wiki.''<br />
<br />
<br />
<br />
<br />
<br />
<br />
=== Blueprint [add the name of the reviewed campaign here] ===<br />
==== Review by [add your name here] (version number of reviewed campaign) ====<br />
<br />
'''Tags:''' * describe the add-on using a few keywords<br />
<br />
'''Review:''' * personal evaluation of the campaign taking into account different aspects such as gameplay, plot, map design, art, etc.<br />
<br />
'''Surroundings''' * add your rating of the visual part of the add-on here (1-10)<br />
<br />
'''Design:''' * add your rating of the general quality of scenarios here (1-10)<br />
<br />
'''Story:''' * add your rating of the story's quality here (1-10)<br />
<br />
'''Fun:''' * add your rating how much enjoyment did this add-on bring to you here (1-10)<br />
<br />
'''Replay value:''' * add your rating about your tendency to play this add-on again here (1-10)<br />
<br />
'''Player note:''' * add your overall rating here (1-10)<br />
<br />
'''Link to review:''' * if you copied the review from the forums then add the related link here<br />
<br />
== Battle for Wesnoth UMC campaign / reviews ==<br />
<br />
''Reviews for Campaigns available in the 1.10.x stable and 1.11.x development versions.''<br />
<br />
<br />
=== After the Storm ===<br />
==== Review by vultraz ====<br />
'''Tags:''' fall, dungeon, elves<br />
<br />
'''Description:''' After the Emperor of Chaos was defeated, the free civilizations of the Great Continent hoped that his followers would abandon the ongoing war. Meanwhile, Galas and his unlikely band of heroes head back to the northern lands to request aid for their next journey.<br />
<br />
'''Summary:''' This campaign is, in my opinion, one of the very best UMC campaigns. It follows the story of Elynia and her band and their adventures following the events of <i>Invasion from the Unknown</i>. Since the campaign is divided into three episodes, I'll talk about each one separately.<br />
<br />
<b>Episode 1:</b> This one starts out slow, but speeds up pretty soon. The first few scenarios capture your attention and want to make you keep playing. It features an appearance of Zocthanol Isle from <i>Under the Burning Suns</i>, which I find quite nice. The late scenarios feature, as in all the episodes, AtS's signature dungeon crawling scenarios, of which I am very fond. My only complaint about this episode would be the third scenario, which is quite tedious after you build up a strong force. Other than that, a good episode.<br />
<br />
<b>Episode 2:</b> This episode jumps in right after the cliffhanger end of episode 1, and finds Elynia 1 year into the future as a result of the explosion in Wesmere. We quickly jump right into the action, and discover a very important character in scenario 2. There are a bunch of nice plot points here, including the deal made with the demon lord, and Elynia's journey to the valley from the beginning of IftU. As before, the last few scenarios feature AtS's dungeon crawling, including a very large scenario 10 map. The episode ends on what I consider a beautiful cutscene, one which finishes with a perfect flair.<br />
<br />
<b>Episode 3:</b> Shadowmaster truly saved the best for last, here. Several amazing plot points come into play in this scenario, as well as an introducing of many new characters and custom units. This episode brings together almost all the plot threads that had been laid throughout the previous two episodes and IftU and wraps them up in an elegant bow, while at the same time exploring in new directions. Gameplay wise, he managed to keep the scenarios interesting and fun after all this time. More dungeon crawling, and a gigantic final scenario followed by several cutscenes wrap up this amazing campaign. One little complaint might be about scenario 4, which I found quite hard to beat.<br />
<br />
All in all, I thoroughly enjoyed this campaign and its story. The maps, characters, and gameplay had me hooked, and I recommend this campaign to anyone.<br />
<br />
'''Surroundings:''' 10<br />
<br />
'''Design:''' 10<br />
<br />
'''Story:''' 10<br />
<br />
'''Fun:''' 10<br />
<br />
'''Replay value:''' 9<br />
<br />
'''Player Note:''' 10<br />
<br />
==== Review by bumbadadabum (0.9.2+svn) ====<br />
<br />
'''Review:''' Although it starts out quite slow, and has some lesser parts in there, I have to say that this is one of the best wesnoth campaigns I've played, and in my opinion even beats its prequel, <i>Invasion from the Unknown</i>. It's very well coded with great attention to detail, has a very good story, and very good maps, especially in Episode 3. The gameplay consists of a variety of battle scenarios, which feel very epic without the scale being too big, and a lot of dungeon-crawling scenarios, broken up with the occasional cutscene. It's not very easy, and it forces you to have a plan for the scenario, which is something I like. Because of the design of the campaign (the episodes all feel like separate campaigns) I'm going to talk about them separately.<br />
<br />
<b>Episode 1:</b><br />
This one starts off slow, with the first few scenarios having little interesting things happening, both gameplay- and storywise, although they weren't bad either. Once things start happening though, the story gets much better and the gameplay more interesting (I especially liked scenario 4 and 5), up until the last few scenarios, when some very abrupt (and almost unnecessary in my opinion) events take place, which actually left me speechless the first time I witnessed them. Another thing that left me speechless was the final cutscene, which was masterfully done and was one of the best in this campaign. In short, it starts off slow, but keeps accelerating once you progress further into the story. It's very well done overall, but it has some things I don't like.<br />
<br />
<b>Episode 2:</b><br />
Episode 2 starts off a bit slow once again, but quickly introduces the player to some important characters and gets us back into the main storyline. It features quite a lot of plot twist, and was especially fun to play through the first time. The gameplay is little different from E1's in that it features a lot of "Defeat enemy leaders" scenarios, but the variety in maps and enemies made it so it wasn't boring. It does however, feature my least favorite scenario in this campaign, scenario 6, but the last 5 scenarios more than make up for this by being some of the best scenarios in this campaign. The final boss and ending cutscene were again very fun, and served as a nice ending of the episode.<br />
<br />
<b>Episode 3</b>:<br />
I can't express how much I liked this episode. I was hooked from beginning to end, and played it all in one session. It immediately starts with, in my opinion, the best opening to a campaign I've ever seen, and got me into the story immediately. The scenarios in this episode are much more story-driven than the others, and the gameplay didn't disappoint either. The next few scenarios, although the were hard at times and frustrated me a bit) were still a lot of fun, but after scenario 6 is when things really start. The story divides into 2 branches. One of them is filled with epic battles, and is considerably less story-driven than the other one. The other one almost plays like a cutscene, and features the best atmosphere I've ever encountered in a campaign. The story keeps accelerating and expanding, and climaxes in very well made final boss. It has an open ending, and leaves much room for speculation. I'm not going to spoil much more, since I'd recommend everyone to play it.<br />
<br />
I'd rate this campaign as nearly flawless, if it'd only be based on the last episode; the other 2 are sometimes lacking a bit of pacing, and some scenarios were a bit frustrating. Overall, I think this is a great campaign, and was worth playing every minute.<br />
<br />
'''Surroundings:''' 9<br />
<br />
'''Design:''' 9<br />
<br />
'''Story:''' 10<br />
<br />
'''Fun:''' 9<br />
<br />
'''Replay value:''' 8<br />
<br />
'''Player note:''' 9<br />
<br />
==== Review by lipk ====<br />
<br />
If I had to describe After the Storm in one word, that would be "monumental". It's mostly like IftU on steroids, although there's a lot of quality improvement as well in some aspects that weren't strong points of its prequel. <br />
<br />
Let's see the visuals first. Shadowmaster is certainly not the best artist out there, but his stuff is good enough not to block you from immersing yourself in the story, and the sheer amount of custom art is amazing. That, along with the very creative use of various effects in cutscenes makes After the Storm the most visually pleasing and filmlike campaign I ever played. I also liked careful choice of music.<br />
<br />
Speaking of writing, AtS fixes IftU's two major flaws: predictability and unoriginality. The plot is full of turns and surprises, and remains interesting through the whole campaign. Sometimes it feels more like a series random events rather than a coherent flow, but Wesnoth is a strategy game after all; AtS is more than okay in this aspect. The backstory, on the other hand, is overly convoluted, confusing and boring, especially in Episode 3. You simply lose interest in even more ancient-powerful-mystic creatures, artifacts and such after a while, especially when they're materialized only on the level of endless dialogs.<br />
<br />
Good news is AtS has fewer dungeon crawls, bad news is that pickuppables are gone, so they are even more boring. Yeah, I think it can't be helped: I simply hate that kind of game play. Battles are well-balanced and enjoyable, only problem is that Wesnoth's AI still can't handle large-scale fights well. Big battles are usually about picking the best spot to defend against enemy waves, which makes these scenarios kinda static (still challenging, though).<br />
<br />
'''Surroundings:''' 10<br />
<br />
'''Design:''' 7<br />
<br />
'''Story:''' 8<br />
<br />
'''Fun:''' 8<br />
<br />
'''Replay value:''' 4<br />
<br />
'''Player note:''' 8<br />
<br />
=== A New Order ===<br />
==== Review by Pyrophorus ====<br />
'''Tags:''' Akladians,skirmish,story<br />
<br />
'''Description:''' A new Order is a rather long campaign, telling the story of the Akladians reign over Wesnoth. In short, Akladians are a barbarian people, coming from east, flying from slavery, who took control over the decadent Wesnoth kingdom. The story begins later, when Gawen, son of the Akladian king and a Wesnoth noblewoman, have to fight his way to the throne, reconciliate Wesnothians and Akladians to face the threat of a powerful necromancer.<br />
<br />
The campaign is a classical skirmish with some large battles, and some riddles to solve. You'll play here Akladian and Khalifate factions. <br />
<br />
'''Summary:''' It is one of the more old and mature projects in UMC (eight years old !), polished and enhanced for years, and still actively updated.<br />
<br />
At first glance, the story can look classical and boring, but it is one of the best campaign story one can find: interesting and various characters, many plot twists, a real world description make the story really interesting and original. Not for children, as the note says, should be understood as being not the kind of childish fancy most campaigns are built on. Maps and battles have been thoroughly designed and balanced, and everything could be said perfect here, with a slight reservation about graphics (but they're progressing for now).<br />
<br />
A classic which many different people can enjoy.<br />
<br />
'''Surroundings:''' 8<br />
<br />
'''Design:''' 8<br />
<br />
'''Story:''' 10<br />
<br />
'''Fun:''' 8<br />
<br />
'''Replay value:''' 6<br />
<br />
'''Player note:''' 10<br />
<br />
<br />
=== Antar, Son of Rheor ===<br />
==== Review by Dugi ====<br />
'''Tags:''' loyalists, skirmish, dungeon<br />
<br />
'''Description:''' A noble's property is attacked by undead, and he has to retaliate in order to stop the undead peril. In his journey, he passes through many other settlements, some of them are attacked by the undead too, some are just naturally hostile, some are corrupted by the promise of immortality the undeath brings and send undead legions to fight him. All of them seem to be just minions of a stronger force, but before he is reached, the end of completed part is here. 9 out of intended 17 scenarios complete.<br />
<br />
'''Summary:''' The scenarios are designed very well, assuring that you will not get bored. Many events take place in the middles of scenarios, making scenarios less usual and different from others. Although this is a nice feature, you are frequently surprised by many elements you cannot expect and it breaks planning. There are a few special units, who have special AMLA or some special abilities, that have an unusual and very practical use on the battlefield. It is balanced quite well despite its incompleteness. The story didn't impress me, though. It is very usual, a group of loyalists going to stop a rise of a lich lord whose dreams of conquest are a endangering anyone is classic. Do not expect anything from minor events neither, the encounters in scenarios are pretty mainstream story-wise as well. Unexpected end in the middle of campaign is a really unpleasant surprise too. There is a little need to replay it, because you will know what will happen, and many of these encounters are easy with proper recruits, but maybe a few years will provide a decent amnesia for that. For short, it is a campaign strongly focusing on interesting gameplay, but if you seek heavy challenges or a deeper plot, this is not what you want.<br />
<br />
'''Surroundings:''' 7<br />
<br />
'''Design:''' 10<br />
<br />
'''Story:''' 6<br />
<br />
'''Fun:''' 7<br />
<br />
'''Replay value:''' 7<br />
<br />
'''Player Note:''' 8 (if I forget the missing end, and assume that these scenarios are like the existing ones)<br />
<br />
<br />
=== Brave Wings ===<br />
==== Review by Arawn ====<br />
<br />
'''Tags:''' drakes, adventure, rpg<br />
<br />
'''Review:''' You take control of a band of drakes as they look for a potion to restore their island from undead. Just like in Fate of a Princess, you have a bunch of cool new units and items to make the experience unique. I loved this campaign for its happy storyline and units. I will admit it has a cliche, deux ex machina ending, but that's the only problem I can recall. Balancing is well-done, especially in areas where you have allies (I played on easy difficulty). There is some replay value since you can play around with who gets what item, but really, it's more of a one-time campaign. Loved the drake blademaster.<br />
<br />
'''Surroundings''' 10<br />
<br />
'''Design:''' 10<br />
<br />
'''Story:''' 9<br />
<br />
'''Fun:''' 10<br />
<br />
'''Replay value:''' 6<br />
<br />
'''Player note:''' 10<br />
<br />
<br />
==== Review by tribes55, dean ====<br />
'''"Tags:"''' Adventurous,Intriguing<br />
<br />
'''"Description:"''' You play as a limited Loyalist faction, and are mainly fighting Undead, Orcish units and goblins. You have alliances with Dwarves and Elves.<br />
<br />
'''"Summary:"''' I liked how the campaign required thinking outside of the box, but I didn't like how on the first scenario there was VERY limited strategies you could use to win. Most scenarios are not like this in this campaign, though.<br />
<br />
'''"Surroundings:"''' Your surroundings are constantly changing, but the maps are always interesting and in some scenarios rewarding for exploring them. 8/10<br />
<br />
'''"Design:"''' The scenarios aren't repetitive and leave you wanting to play the next campaign. 8/10<br />
Story: Seeing as the story is what makes me want to play the campaign, and this one kept me to the very end of the currently limited scenarios I'd give it story a 8/10.<br />
<br />
'''"Fun:"''' * Very rarely was I bored. 7/10<br />
Replay value: * Some scenarios challenge you to do the Scenario in a more efficient way which would make me want to replay the campaign and see what I could do better this time. 7/10<br />
<br />
Player note: * <br />
Overall rating would be 8/10.<br />
<br />
<br />
=== Count Kromire ===<br />
==== Review by Dugi ====<br />
'''Tags:''' custom era, vampires, skirmish<br />
<br />
'''Description:''' A vampire campaign. In our culture, there are two kinds of vampires, first the evil bloodthirsty creatures that are usually counts and dukes and rule over small realms in dark mountains, and second, the eternal high school kids who fall in love with teens. Of course, this is about the first, cool kind of vampires. A bloodsucker has lost his land to celestials, and fights to get it back. He forges an alliance with other vampires and a strange order of humans (Windsong), and together they defeat the celestials and get his land back.<br />
<br />
'''Summary:''' It starts in a really cool way, you have two vampires and have to bite peasants to get more vampires from them. However, you will quickly get the ability to recruit them (because getting all units from plague making level 0 units would be a pain). Most of the campaign is rather classical, with well-designed and well-balanced scenarios. You play with vampires, a really interesting faction (with mages, archers, melee fighters, poison, drain on most units). The maps looks somewhat glum, but that is what you'd expect from a land controlled by vamps. They aren't very realistic either, but that actually makes the gameplay better. The way the end happens depends on some previous actions. Dialogues are not bad, quite funny because of a vampire who can't speak properly because of his huge teeth.<br />
<br />
Using a custom era has its downsides, though. Almost all units lack animations, so all combat is like headbutting with blade damage. The lore behind the factions is not as deep as in mainline, so you just don't know the motivations of most enemies to attack you. As a result, the story isn't anything special. It also has quite a strange element, if you let a guy live, he will attack you later for the arrogance of fighting him (he also quite unpleasantly surprises you by turning against you when you defeat the enemies together, for your arrogance, and it might get you defeated very easily if you aren't ready for it). I was really displeased by seeing in a description that vampires are immune to drain and plague, but shouldn't be immune to poison, but the engine does not allow it, that was total bullshit, but that is rather a part of the era.<br />
<br />
If you are bored with default era and can ignore the lack of animations, you will like it. If you seek gameplay-wise interesting factions, you'll like it too. Also if you are a fan of Twilight and need to learn what are the vampire stories about. But if you are okay with default era and classical factions and seek unusual scenarios and stories, you might not like it.<br />
<br />
'''Surroundings:''' 5<br />
<br />
'''Design:''' 9<br />
<br />
'''Story:''' 7<br />
<br />
'''Fun:''' 9<br />
<br />
'''Replay value:''' 7<br />
<br />
'''Player Note:''' 7<br />
<br />
=== Fate of a Princess ===<br />
==== Review by Paulomat4 ====<br />
'''Tags:''' elves, rogues, riders, skirmish, dungeon, RPG<br />
<br />
Part I: Baldres, a notorious robber baron, flees Wesnoth with his followers and sets off into the northlands to evade the kings justice. The barons deeds and misdeeds are to change the balance of power between orcs and non-orcs throughout the northlands, and will carry consequences long after his eventual death.<br />
Part II: The Greenwood elves face a crisis which demands the return of the queen's estranged half-elven half-sister, Baldreds daughter. Two brave young elves must make a perilous journey to find her and bring her back to her former home. If they fail, the whole northlands will be engulfed in war with the resurgent orcs...<br />
<br />
'''Summary:''' Nice story, which is composed of two parts. In the first part you mainly fight with bandit knights, and often have to rush from one point to another. In the second part, gameplay consists of elves, and various other races like drakes or saurians or dwarves. You will fight various races in the first part, and mostly orcs in the second. The campaign feature many custom units, and some your heroes will even have AMLA advancements. Also you will be able to collect many items through the campaign, which may cause some units to be overpowered but this is also bound to storyline reasons. The story reveals a lot about the northlands and their different factions.<br />
<br />
'''Surroundings:''' 8<br />
<br />
'''Design:''' 9<br />
<br />
'''Story:''' 7<br />
<br />
'''Fun:''' 9<br />
<br />
'''Replay value:''' 8<br />
<br />
'''Player Note:''' 8<br />
<br />
==== Review by [Arawn] (0.9.24) ====<br />
<br />
'''Tags:''' elves, rogues, riders, skirmish, dungeon, RPG, adventure, rescue, quest<br />
<br />
'''Review:''' Greatly enjoyed this campaign. It's a bit long but worth it. You're given control of a small squad of units to bring aid to your people (the elves). From the start, you get to use unique, very well-designed units alongside standard ones. The story is entertaining but never makes the mistake of turning into a comedy or taking itself too seriously. There are also new AMLA advancements and weapons. Both made the campaign a lot of fun for me. Best of all, the story is referenced by other campaigns (Brave Wings, I think), adding a sense of realism.<br />
<br />
'''Surroundings''' 9<br />
<br />
'''Design:''' * 10<br />
<br />
'''Story:''' 10<br />
<br />
'''Fun:''' 9<br />
<br />
'''Replay value:''' 5<br />
<br />
'''Player note:''' 9<br />
<br />
=== Invasion from the Unknown ===<br />
==== Review by Dugi ====<br />
'''Tags:''' elves, undead, skirmish, dungeon, puzzle<br />
<br />
'''Description:''' Starting with usual elves in forests and deserts, quickly adding the undead faction in a battle against several custom factions, evil human army, mysterious Verlissh, sinister demons, robotic automatons and dreadful, biomechanic Shaxtrals, that progresses through caves and steppes into the mysterious Dark Hive, where the Shadow Master dwells. 30 scenarios. Complete.<br />
<br />
'''Summary:''' This campaign has a good and interesting story, enough long to develop an army of recalls an use it well. You will encounter many new kinds of enemies, assuring that you will never get bored, even if you aren't a fan of the default era. Its gameplay is unique in many ways, frequently, the enemies are just coming, and you have to pass through the area instead of defeating some leader. Another speciality are boss fights, when you can defeat a boss only using some special technique. The campaign is also balanced pretty well, easy difficulty is to enjoy the story, hard difficulty is really challenging.<br />
However, almost all new units lack animations of any kind, that harms the visual part of this add-on. Also, some elements of the storyline are too exaggerated. But these little problems will not spoil anything.<br />
<br />
'''Surroundings:''' 7<br />
<br />
'''Design:''' 10<br />
<br />
'''Story:''' 9<br />
<br />
'''Fun:''' 10<br />
<br />
'''Replay value:''' 7<br />
<br />
'''Player Note:''' 10<br />
<br />
''Review by Dugi''<br />
<br />
==== Review by lipk ====<br />
Invasion from the Unknown was the first add-on I played (not completely unrelated to the fact that it was first entry in the campaign list back in the 1.8 days) and is still among my favorites. IftU has exceptionally well-designed maps, loads of custom terrain and units, and even some portrait art. The world is rich and detailed, it makes you want to press on to explore it deeper. The plot isn't a strong point of the campaign, though, it's awfully linear (that wouldn't be a problem on it's own right if it was shorter, but in 20+ scenarios, it would be nice to see some twists), and anyone who's familiar with UtBS should notice that it pretty much lacks originality, too. I didn't like the game play either; the campaign turns into a sequence of dungeon crawls and megalomaniac battles very early on, both of which I find slow and boring. That might be just my taste, though.<br />
<br />
All in all, Invasion from the Unknown is a well put-together product. It has major flaws regarding scenario and plot design, which might severely reduce the replay value of this campaign, but it's certainly worth playing at least once.<br />
<br />
'''Surroundings:''' 9<br />
<br />
'''Design:''' 6<br />
<br />
'''Story:''' 7<br />
<br />
'''Fun:''' 8<br />
<br />
'''Replay value:''' 4<br />
<br />
'''Player note:''' 7<br />
<br />
=== Legend of the Invincibles ===<br />
==== Review by Raijer ====<br />
'''Description''': A huge campaign that will be 10 chapters long (9 chapters currently), and will have more than 200 scenarios. This campaign follows 2 heroes that find a way to eternal life, going through times, before and after the Fall, and witnessing some of the most important events in Wesnoth's history, like the raise of the second sun.<br />
<br />
The player will be able to use humans, elves, but also undead and some special units, and will fight against basically anything you can imagine, going from orcs to demons and passing by some robots. It includes an item system, with enemy drops, crafting and gears, giving additions to units' normal attacks. The history permits to get a huge recall list, with level 4 units in the main races used and new AMLAs possibilities.<br />
<br />
'''Summary''': This campaign has a really long story, which explains some of Wesnoth's history that wasn't talked much about in other campaigns. Despite its length, it actually never gets boring because the story is well-done, stays really coherent, but also because of the scenarios' diversity, having huge battles but also some dungeons, and special objectives. I really like how this campaign makes a mix of Wesnoth's turn-based system and the basic RPG's system, like spells, items, crafting and more… But also because it creates new strategies that can't be found in normal campaigns, thanks to the item system and AMLAs that weren't really used in other campaigns, while keeping Wesnoth's basic way of playing. The difficulty is pretty much standard, as easy being easy for everyone, and hard being really hard and most likely a huge tactical challenge. Though some scenarios in normal can be seen as really easy or really hard.<br />
<br />
I'm really happy about this campaign because it permits to personalize your units depending on what you want them to be able to do with the AMLAs, but also with the huge item bank. I also liked the story, because i don't like how some part in Wesnoth's history are left unexplained, and this campaign goes through Irdya's history, filling some blanks. Finally, i would like to say that this campaign can be played again and again, as there are some secret scenarios, but also infinite possibilities with the items and AMLAs, which make each time completely different.<br />
<br />
The bad sides: the item inventory is slow (seems like it will be fixed), can be really annoying in the later parts. The leaders can seem overpowered to unacquainted players though it changes as you advance. The balance isn't complete yet, but it most likely will be done as soon as the story itself is finished. There still are some bugs around, but none that stops from playing as far as i know.<br />
And last, big problem: THERE'S ONLY 1 CHAPTER LEFT BEFORE THE STORY ENDS!<br />
<br />
'''Surroundings''': 7<br />
<br />
'''Design''': 7<br />
<br />
'''Story''': 10<br />
<br />
'''Fun''': 10<br />
<br />
'''Replay value''': 9<br />
<br />
'''Player note''': 10<br />
<br />
<br />
==== Review by bumbadadabum ====<br />
'''Description:''' (quoting Raijer) A huge campaign that will be 10 chapters long (9 chapters currently), and will have more than 200 scenarios. This campaign follows 2 heroes that find a way to eternal life, going through times, before and after the Fall, and witnessing some of the most important events in Wesnoth's history, like the raise of the second sun.<br />
<br />
The player will be able to use humans, elves, but also undead and some special units, and will fight against basically anything you can imagine, going from orcs to demons and passing by some robots. It includes an item system, with enemy drops, crafting and gears, giving additions to units' normal attacks. The history permits to get a huge recall list, with level 4 units in the main races used and new AMLAs possibilities. <br />
<br />
'''Summary:''' I didn't like this campaign a single bit. The scenarios feel like they've been designed 'in a hurry' without paying any attention to detail. The lack of variety or events in scenarios make them very boring to play, and often made me want to just :n and be done with them. The scale of the scenarios is completely blown out of scale, and this makes it extremely tedious to play, as everytime you press the end turn button you have to wait for the literally hundreds of enemies to move. The maps are not horrible, but far from mainline level. The story (which is one of the most important things in a campaign for me) is perhaps one of the worst things about this campaign. The dialog is badly written (in places where it is present. There isn't much dialog outside of starting dialog) and feels completely emotionless. The characters are paper-thin and not very well developed, and that only contributes to my thinking that the entire story is only there to tie the 185 scenarios together. It feels ridiculous and sometimes made me wonder what I was doing with my life, after I read another dialog. The art of the campaign consists mostly of bad frankensteins or horribly drawn units, with the exceptions of the portraits for Efraim and Lethalia, which actually look pretty decent. Overall, I feel like the pretty good idea behind the RPG engine, which in my opinion is also poorly executed, has gone to waste by it being in this campaign. I think this campaign is bad and doesn't deserve any of the praise it often receives on the forums. I would not recommend this campaign to anyone.<br />
<br />
'''Surroundings:''' 4<br />
<br />
'''Design:''' 2<br />
<br />
'''Story:''' 3<br />
<br />
'''Fun:''' 3<br />
<br />
'''Replay value:''' 4<br />
<br />
'''Player note:''' 2<br />
<br />
<br />
==== Review by t3st3r ====<br />
'''Description''': Really large and custom campaign about two heroes who are about to become legendary half-gods. During campaings there are also several "lesser" heroes with remarkable powers and abilities as well, which makes game more interesting for sure. Right now there are 9 chapters, about 200 scenarios (10 planned as far as I know). Largest and most diverse campaign I've seen so far for BfW. And the only campaign I've replayed THREE times. Because I like overall gameplay so much that I has been willing to play it even when there was 3 or 4 chapters ready, so it has been quite incomplete. To my taste it's the most epic campaign for BfW to the date. <br />
<br />
In this campaign player could find nearly all you could expect from decent game scripting engine and seriously customized scenarios. And nearly all you've missed in original BfW campaigns and maps. Great AMLAs, much better than original BfW AMLAs are. Isn't it boring to kill 20 enemies just to get some dumb +3 hp bonus? This campaign corrects this problem: most advancements are actually useful and you can control units development path (to some degree). There are some extra LVLs for many units, this is really adding up. Sure, there could be factions balance issues if you use such settings for PvP, but it's not a problem of campaign itself and it really adds up to gameplay. There will be a number of really strong enemies of truly epic scale. Real dragons, real monsters, real freaks, real arch-enemies. All kings of dangerous things you can imagine and even more than that. Some of them require very custom approach so reading in-game messages/hints is a must. There is decent items system as well. Sure, geared warriors could handle much more than those with bare hands or simple weapons. Some items could even allow "simple" (non-hero) units to challenge some tough monsters on their own. Though many arch-enemies would be hard to kill even for main heroes without proper handling and using their weak points. To my taste, I really like this campaign. In fact it's my favorite campaign, thanks to custome AMLAs, 10 chapters, items system, strong enemies and various twists to add more fun to gameplay. Sometimes you can also use units from previous chapters, which allows you to have strong army of relatively few powerful units, which is just convenient to play. This is taken into account and those who continues from old chapters are facing much stronger resistance than those who starts chapter from scratch with "dummy" heroes and lack of geared and leveled army. There are some secrets and treasures hidden, custom events and so on. There is even some basic form of item crafting, some multi-part artefacts and so on. So players who are careful to details could have some extra/optional fun in game. This is what always distinguishes well thought maps from serious map makers and scripters. So if someone tired of standard boring BfW game mechanics, it's really worth to try this campaign out to see something new, beyond standard BFW mechanics and take some completely new look on familiar storylines.<br />
<br />
'''Summary''': This is a very long campaign, telling the story of two heroes who would follow a long path from mere mortals up to strong half-gods, capable of challenging almost any kinds of <br />
things. This is somewhat mixed into classic BfW storyline and shows it from different point of view, which isn't as simple as it looks like. First chapters show us how heroes would become some immortal and powerful beings, then they will gain more power and finally manage to become half-gods. While it's really long story, there are so many types of enemies, their abilities, new storyline twists, unexpected things and so on, that it's still remains fun to play. Even after you played many chapters already. Sure, some scenarios are lengthy and/or take too much efforts to control units or wait for AI moves. However, if campaign haves ~200 scenarios, it's hard to iron out all issues in just one shot. Yet it still impressive already, especially granted that it's still work in progress and is not yet complete. <br />
<br />
Difficulty of this campaign varies. Depending on paths you've taken, units equipent and how all this affects certain enemies, some enemies could be easier/harder than others. On normal difficulty level it should be manageable for seasoned BfW player. I would not recommend this campaign to newbies as it would teach you many funny things which will be (unfortunately!) missing in most of other BfW campaigns. Players have to understand it uses enhanced game mechanics. Maps vary wildly, ranging from standard "kill them all" scenarios to RPG and quest style maps. You can develop some really new and uncommon tactics. For example, you can use meteor spell to blow up a host of powerful enemies and then teleport away if situation permits. New abilities for new strategies are nearly countless, thanks to improved AMLAs, items system and new spells and their AMLA improvements.<br />
<br />
In this campaign you can often have "convenient" army composed of relatively few relatively powerful units with some special abilities, complementing each other. As for me, it's annoying to deal with 100 lvl 1 weaklings. I'm as human is inefficient and slow in doing so. This campaign will be far more convenient most of time. It's usually enough to have 10-20 strong units + some heroes to win scenario. <br />
<br />
Though it's noteworthy to mention that advanced items system and AMLAs are making it hard keep it perfectly balanced in all corner cases in all possible combinations, so sometimes you can face some too simple or quite hard maps, unexpectedly. However, unless there is some bug, seasoned BfW players should not have real troubles in most places. And it will feel unique each time you play it, as you will take different paths here and there. That what makes it funny to replay, trying different paths in advancements.<br />
<br />
The most daunting issue to my taste is that BfW core neither really supports items system on it's own, nor it provides any decent UI to deal with items. I think BfW authors should consider adding support for items and items management to the BfW core to make mapmakers life easier. It's not only campaign where this problem exists, there are dozen and half of campaigns sharing same issue. But as this campaign makes extensive use of items, it's where problem is getting really obvious. AI is really dumb and clueless at handling items/extended features, etc. And sometimes in-game computations could take a while, so powerful CPU could be a good idea. I can also admit that authors of various campaigns have minor mismatches in explaining the very same events from BfW world. Ideally, they mismatches have to be corrected but it requires cooperation of large number of independent people and I can understand it's somewhat troublesome to achieve. And of course there are some things to iron out as it's still work in progress. This probably applies to complaints that AI takes a long time to complete turns, etc - on some maps it's really good idea to go to preferences and set "skip AI moves" option on.<br />
<br />
'''Surroundings''': 8<br />
<br />
'''Design''': 8<br />
<br />
'''Story''': 9<br />
<br />
'''Fun''': 10<br />
<br />
'''Replay value''': 9<br />
<br />
'''Player note''': 10<br />
<br />
<br />
=== Panther Lord ===<br />
==== Review by taptap ====<br />
Panther Lord is one of my favourite campaigns and on higher difficulties one of the most challenging. Unlike many campaigns with an anticlimactic end (Northern Rebirth, Heir to the Throne etc.) it is unrelenting from start until the end (I suffered more than 140 casualties during its 14 scenarios). Velensk is a good player and it shows. <br />
<br />
This is the showcase campaign for the Era of Four Moons, while Salt Wars is a short and much easier introduction. The Era itself is well balanced, with many novel ideas and no elves. Admittedly, at first I shuddered at the idea of playing "half-naked wild with dark-coloured sprites" - I was quite troubled that it might be a collection of racist stereotypes, but playing with it, it certainly didn't feel so. (Much better indeed than the typical association of orcs in Tolkien-esque fantasy with mongols / turks.) There aren't only tribal Darklanders and Highlanders, but Sea States and Imperialists as well. Each of them plays very differently, none of them is depicted as timeless or "always chaotic evil", even the Imperialists, the enemies in the campaign, get the opportunity to declare themselves. It certainly benefits from the background world (IALFA developed by the maintainer of the campaign) even if you only see a glimpse of it. <br />
<br />
The hero of the campaign is a mercenary outcast of his own Darklander civilization. When learning about plans to raze and colonize the jungles of his people by the imperialists he starts the quest to rescue his people. His friend the Panther spirit, to whom the campaign owes its name, always at his side, he is rallying troops and mercenaries around him, but soon he has to realize that change is inevitable. Changing their ways they may have hope to withstand or else they will be changed by force and subjugation. But how to convince his own people when he is an upstart at best, a traitor and spirit-friend at worst?<br />
<br />
While the campaign is centered around Darklanders, the player has the choice of hiring (and recalling) a limited amount of highly useful mercenaries of the other factions of the Era. The campaign features small scale to a few large scale battles and puts different territory to good use encouraging the use of mercenaries and different unit types. I omit the numbers, but this campaign is certainly recommended.<br />
<br />
<br />
=== Swamplings ===<br />
==== Review by Dunno ====<br />
'''Description:''' Swamplings is the name of goblin tribe living in swamps, banished by orcs. In an unfortunate turn of events, those goblins get tangled up in human affairs and must fight for their very survival. The player also learns how goblins started riding wolves.<br />
<br />
'''Summary:''' It's a decent, finished and stable campaign with interesting plot. There are many humorous scenes and some serious ones, there are standard battle scenarios and various original missions. There are also some high quality custom sprites, and maps are very good as well. It won't make your jaw drop, however, it's just a modest, enjoyable campaign.<br />
<br />
'''Surroundings:''' 7<br />
<br />
'''Design:''' 8<br />
<br />
'''Story:''' 8<br />
<br />
'''Fun:''' 9<br />
<br />
<br />
==== Review by Pyrophorus ====<br />
'''Tags:''' goblins,skirmish,story<br />
<br />
'''Description:''' see previous review.<br />
<br />
'''Summary:''' This campaign is very original and imaginative. First of all, it features not chivalrous heroes like most Wesnoth campaigns, but humble and rather stubborn people instead. More of it, the story is much more picaresque than epic, written in a delicious humorous tone, very unusual in Wesnoth world. IMO, it's one of the few really good writing one can find here. It's impossible to abstract this complex story, where everything goes in an unexpected way, to list every strange encounter, funny event and so on. If you like good writing, humor, as well as hardcore fighting, you'll really love this campaign. If not, just as Dunno says, it's honest, no more.<br />
<br />
'''Surroundings:''' 7<br />
<br />
'''Design:''' 8<br />
<br />
'''Story:''' 10<br />
<br />
'''Fun:''' 10<br />
<br />
'''Replay value:''' 7<br />
<br />
<br />
=== Talentless Mage ===<br />
==== Review by Dunno ====<br />
'''Description:''' A humorous story about a mage who managed to learn only one spell in his life and who takes command of N.O.O.B.S. (Noticeably - Optimal - Outstanding - Brilliant - Soldiers) squad. N.O.O.B.S. advance through amla with basic options like melee attack, melee damage etc. <br />
<br />
'''Summary:''' this here is Wesnoth parody at its best. The campaign mocks the common cliches in Wesnoth campaigns and overused events, like loyal units coming out of villages, random magical items scattered around the map and low quality frankensprites. Very absurd and pythonesque at times, you will keep smiling and laughing through the whole story.<br />
<br />
'''Surroundings:''' 6<br />
<br />
'''Design:''' 8<br />
<br />
'''Story:''' 9<br />
<br />
'''Fun:''' 10<br />
<br />
<br />
=== The Library of Kratemaqht ===<br />
==== Review by Wesbane ====<br />
The campaign is about genesis, course and outcome of civil war in empire of Anaktoron.<br />
Surroundings:<br />
The way campaign looks. How it feels and uses game engine is simply amazing and unseen before.<br />
Maps are nicely done although many parts of a map serve for story (decorative) purpose only what is not always good. You will travel through wealthy and populous kingdom which is torn apart by war. To create this impression in most of maps there is a lot of villages and they are placed in large groups, but map look doesn't suffer from it. More over you can feel destruction in game world as never before. Campaign features custom burning houses which are not only mere visual effect but have impact on battle course.<br />
It is one of most cinematic campaigns if not the most. Cutscenes are packed with action and take place in several locations. Also game transition fluently into cutscene and cutscene into game. What makes it even more interesting since you will never know is it just a cutscene?<br />
In terms of visual effects it also features the best epilogue ever.<br />
As it was not enough you can experience a true wesnoth dragon. It is so unusual that it need separate mention.<br />
Dragon is fully animated and have some nice custom sounds. Some of it animations are purely character play. Like roar and feasting. And last, but not least it preserves original wesnoth dragon concepts. It attacks with fangs and tail. Although it primary weapon is ranged magical fire breath which works as AoE attack when used offensively. There is one little bug with its animation, but it can't be noticed during playing it anyway.<br />
In short this campaign surely establish new standards for wesnoth in department of visuals.<br />
Design:<br />
Scenarios design is good. All levels are playable. Objectives are clearly formed, so it is known most of the time what to do. There are several minor bugs and one bigger that affects game to some degree. However they do not make impossible to play and enjoy campaign.<br />
Campaign is using default units although sometimes with unusual traits and abilities. Custom units are also present, but only as much as they are needed. Which is a great thing since it proves designer skill at using available resources. Beside that I really can't stand campaigns introducing many user made units.<br />
I liked much idea of premagic era and weakened magic users. Unfortunately any extra mages aren't useful since you have already better characters of this class. In fact after my recall list was cleaned up after Jevyans Return I never bothered to recruit them again.<br />
Gold carryover system is custom which is not a good choice for classic style adventure. Twenty percent instead of forty. Most probably this is caused by slightly overpopulated maps. Campaign is very easy, except two scenarios: Refugees and Loyalty's Cruel Reward. There is no moderately difficult scenarios. The huge difference between average level difficulty and hardest level is just to big. Most difficult scenarios are Refugees and Loyaltys Cruel Reward.<br />
Story:<br />
Amount of delivered information is enough. Writing style is good. Beginning is terrific. Switching between protagonists is cool, and quite innovative idea. Overall concept is nicely executed and creator skillfully merged a lot of facts from mainline into own story. To fully appreciate this playing The Rise of Wesnoth is recommended. However ending I found disappointing. It seemed rushed and unconvincing. Also few details don't match to reality of Irdya.<br />
Fun:<br />
Campaign is definitely entertaining. Well done battles. Good dialog. And full of fresh ideas. You can play as good and bad in a single campaign! Although I have nothing against being awesome most of the time enemies fell way to easily to my taste.<br />
Replay value:<br />
Campaign is nicely done and straight forward. Although there is nothing that would reject you from playing it again, there is nothing that would encourage you to do that either. No hidden secrets, no tactical challenges, no extra levels. No satisfying ending.<br />
<br />
Summary:<br />
Overall it is well made, really great, easy campaign suitable for beginners with story explaining some events from The Rise of Wesnoth. Bringing new standards in design, especially visual ones. It story is shown from several angles what is unique feature, but unfortunately potential of this solution wasn't used at all. If you are looking for deep plot, and tactical challenge you won't find it here.<br />
<br />
'''Surroundings: 10<br />
<br />
'''Design: 6<br />
<br />
'''Story: 7<br />
<br />
'''Fun: 7<br />
<br />
'''Replay value: 5<br />
<br />
'''Campaign score: 7<br />
<br />
'''Player note: 8<br />
<br />
'''Link to review:''' [http://forums.wesnoth.org/viewtopic.php?f=8&t=37798&start=45#p551674]<br />
<br />
<br />
=== To Lands Unknown ===<br />
==== Review by Dunno ====<br />
'''Description:''' This campaign tells about Mehir, a Summoner, who's working on a great quest of making the biggest magical circle ever made. If he and other summoners succeed, activating the circle will bring them to the Abyss, the lands unknown.<br />
<br />
'''Summary:''' The main idea behind this campaign and the Era of Magic (used by To Lands Unknown) is to take Wesnoth graphics to an entirely new level. Maps are no longer simple, repetitive hexes, instead many maps are absolutely mindblowing landscapes. In addition, all units are well made and animated. The story and gameplay, however, could have been done better. The campaign is quite long, and at times battles get boring.<br />
<br />
'''Surroundings:''' 10<br />
<br />
'''Design:''' 7<br />
<br />
'''Story:''' 5<br />
<br />
'''Fun:''' 6<br />
<br />
<br />
== Back to Guide to UMC Campaigns ==<br />
* '''[http://wiki.wesnoth.org/index.php?title=Guide_to_UMC_Campaigns Guide to UMC Campaigns]'''<br />
<br />
<br />
== Feedback Thread ==<br />
If you have criticism, ideas and suggestions then please post it in the feedback thread.<br />
<br />
Or maybe you don't want, or don't know how to edit the wiki page, then you can post your review also here. I will add it then to this page.<br />
* '''[http://forums.wesnoth.org/viewtopic.php?f=17&t=38946 Feedback Thread]'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=Player_UMC_Reviews&diff=51533Player UMC Reviews2013-06-30T10:56:25Z<p>Lipk: /* After the Storm */</p>
<hr />
<div>''This is a place where you can add your reviews for the current (1.10.x/1.11.x) UMC campaigns. Please edit, it is a wiki.''<br />
<br />
<br />
<br />
<br />
<br />
<br />
=== Blueprint [add the name of the reviewed campaign here] ===<br />
==== Review by [add your name here] (version number of reviewed campaign) ====<br />
<br />
'''Tags:''' * describe the add-on using a few keywords<br />
<br />
'''Review:''' * personal evaluation of the campaign taking into account different aspects such as gameplay, plot, map design, art, etc.<br />
<br />
'''Surroundings''' * add your rating of the visual part of the add-on here (1-10)<br />
<br />
'''Design:''' * add your rating of the general quality of scenarios here (1-10)<br />
<br />
'''Story:''' * add your rating of the story's quality here (1-10)<br />
<br />
'''Fun:''' * add your rating how much enjoyment did this add-on bring to you here (1-10)<br />
<br />
'''Replay value:''' * add your rating about your tendency to play this add-on again here (1-10)<br />
<br />
'''Player note:''' * add your overall rating here (1-10)<br />
<br />
'''Link to review:''' * if you copied the review from the forums then add the related link here<br />
<br />
== Battle for Wesnoth UMC campaign / reviews ==<br />
<br />
''Reviews for Campaigns available in the 1.10.x stable and 1.11.x development versions.''<br />
<br />
<br />
=== After the Storm ===<br />
==== Review by vultraz ====<br />
'''Tags:''' fall, dungeon, elves<br />
<br />
'''Description:''' After the Emperor of Chaos was defeated, the free civilizations of the Great Continent hoped that his followers would abandon the ongoing war. Meanwhile, Galas and his unlikely band of heroes head back to the northern lands to request aid for their next journey.<br />
<br />
'''Summary:''' This campaign is, in my opinion, one of the very best UMC campaigns. It follows the story of Elynia and her band and their adventures following the events of <i>Invasion from the Unknown</i>. Since the campaign is divided into three episodes, I'll talk about each one separately.<br />
<br />
<b>Episode 1:</b> This one starts out slow, but speeds up pretty soon. The first few scenarios capture your attention and want to make you keep playing. It features an appearance of Zocthanol Isle from <i>Under the Burning Suns</i>, which I find quite nice. The late scenarios feature, as in all the episodes, AtS's signature dungeon crawling scenarios, of which I am very fond. My only complaint about this episode would be the third scenario, which is quite tedious after you build up a strong force. Other than that, a good episode.<br />
<br />
<b>Episode 2:</b> This episode jumps in right after the cliffhanger end of episode 1, and finds Elynia 1 year into the future as a result of the explosion in Wesmere. We quickly jump right into the action, and discover a very important character in scenario 2. There are a bunch of nice plot points here, including the deal made with the demon lord, and Elynia's journey to the valley from the beginning of IftU. As before, the last few scenarios feature AtS's dungeon crawling, including a very large scenario 10 map. The episode ends on what I consider a beautiful cutscene, one which finishes with a perfect flair.<br />
<br />
<b>Episode 3:</b> Shadowmaster truly saved the best for last, here. Several amazing plot points come into play in this scenario, as well as an introducing of many new characters and custom units. This episode brings together almost all the plot threads that had been laid throughout the previous two episodes and IftU and wraps them up in an elegant bow, while at the same time exploring in new directions. Gameplay wise, he managed to keep the scenarios interesting and fun after all this time. More dungeon crawling, and a gigantic final scenario followed by several cutscenes wrap up this amazing campaign. One little complaint might be about scenario 4, which I found quite hard to beat.<br />
<br />
All in all, I thoroughly enjoyed this campaign and its story. The maps, characters, and gameplay had me hooked, and I recommend this campaign to anyone.<br />
<br />
'''Surroundings:''' 10<br />
<br />
'''Design:''' 10<br />
<br />
'''Story:''' 10<br />
<br />
'''Fun:''' 10<br />
<br />
'''Replay value:''' 9<br />
<br />
'''Player Note:''' 10<br />
<br />
==== Review by bumbadadabum (0.9.2+svn) ====<br />
<br />
'''Review:''' Although it starts out quite slow, and has some lesser parts in there, I have to say that this is one of the best wesnoth campaigns I've played, and in my opinion even beats its prequel, <i>Invasion from the Unknown</i>. It's very well coded with great attention to detail, has a very good story, and very good maps, especially in Episode 3. The gameplay consists of a variety of battle scenarios, which feel very epic without the scale being too big, and a lot of dungeon-crawling scenarios, broken up with the occasional cutscene. It's not very easy, and it forces you to have a plan for the scenario, which is something I like. Because of the design of the campaign (the episodes all feel like separate campaigns) I'm going to talk about them separately.<br />
<br />
<b>Episode 1:</b><br />
This one starts off slow, with the first few scenarios having little interesting things happening, both gameplay- and storywise, although they weren't bad either. Once things start happening though, the story gets much better and the gameplay more interesting (I especially liked scenario 4 and 5), up until the last few scenarios, when some very abrupt (and almost unnecessary in my opinion) events take place, which actually left me speechless the first time I witnessed them. Another thing that left me speechless was the final cutscene, which was masterfully done and was one of the best in this campaign. In short, it starts off slow, but keeps accelerating once you progress further into the story. It's very well done overall, but it has some things I don't like.<br />
<br />
<b>Episode 2:</b><br />
Episode 2 starts off a bit slow once again, but quickly introduces the player to some important characters and gets us back into the main storyline. It features quite a lot of plot twist, and was especially fun to play through the first time. The gameplay is little different from E1's in that it features a lot of "Defeat enemy leaders" scenarios, but the variety in maps and enemies made it so it wasn't boring. It does however, feature my least favorite scenario in this campaign, scenario 6, but the last 5 scenarios more than make up for this by being some of the best scenarios in this campaign. The final boss and ending cutscene were again very fun, and served as a nice ending of the episode.<br />
<br />
<b>Episode 3</b>:<br />
I can't express how much I liked this episode. I was hooked from beginning to end, and played it all in one session. It immediately starts with, in my opinion, the best opening to a campaign I've ever seen, and got me into the story immediately. The scenarios in this episode are much more story-driven than the others, and the gameplay didn't disappoint either. The next few scenarios, although the were hard at times and frustrated me a bit) were still a lot of fun, but after scenario 6 is when things really start. The story divides into 2 branches. One of them is filled with epic battles, and is considerably less story-driven than the other one. The other one almost plays like a cutscene, and features the best atmosphere I've ever encountered in a campaign. The story keeps accelerating and expanding, and climaxes in very well made final boss. It has an open ending, and leaves much room for speculation. I'm not going to spoil much more, since I'd recommend everyone to play it.<br />
<br />
I'd rate this campaign as nearly flawless, if it'd only be based on the last episode; the other 2 are sometimes lacking a bit of pacing, and some scenarios were a bit frustrating. Overall, I think this is a great campaign, and was worth playing every minute.<br />
<br />
'''Surroundings:''' 9<br />
<br />
'''Design:''' 9<br />
<br />
'''Story:''' 10<br />
<br />
'''Fun:''' 9<br />
<br />
'''Replay value:''' 8<br />
<br />
'''Player note:''' 9<br />
<br />
==== Review by lipk ====<br />
<br />
If I had to describe After the Storm in one word, that would be "monumental". It's mostly like IftU on steroids, although there's a lot of quality improvement as well in some aspects that weren't strong points of its prequel. <br />
<br />
Let's see the visuals first. Shadowmaster is certainly not the best artist out there, but his stuff is good enough not to block you from immersing yourself in the story, and the sheer amount of custom art is amazing. That, along with the very creative use of various effects in cutscenes makes After the Storm the most visually pleasing and filmlike campaign I ever played. I also liked careful choice of music.<br />
<br />
Speaking of writing, AtS fixes IftU's two major flaws: predictability and unoriginality. The plot is full of turns and surprises, and remains interesting through the whole campaign. Sometimes it feels more like a series random events rather than a coherent flow, but Wesnoth is a strategy game after all; AtS is more than okay in this aspect. The backstory, on the other hand, is overly convoluted, confusing and boring, especially in Episode 3. You simply lose interest in even more ancient-powerful-mystic creatures, artifacts and such after a while, especially when they're materialized only on the level of endless dialogs.<br />
<br />
Good news is AtS has fewer dungeon crawls, bad news is that pickuppables are gone, so they are even more boring. Yeah, I think it can't be helped: I simply hate that kind of game play. Battles are well-balanced and enjoyable, only problem is that Wesnoth's AI still can't handle large-scale fights well. Big battles are usually about picking the best spot to defend against enemy waves, which makes these scenarios kinda static (still challenging, though).<br />
<br />
'''Surroundings:''' 10<br />
<br />
'''Design:''' 7<br />
<br />
'''Story:''' 8<br />
<br />
'''Fun:''' 8<br />
<br />
'''Replay value:''' 4<br />
<br />
'''Player note:''' 8<br />
<br />
=== A New Order ===<br />
==== Review by Pyrophorus ====<br />
'''Tags:''' Akladians,skirmish,story<br />
<br />
'''Description:''' A new Order is a rather long campaign, telling the story of the Akladians reign over Wesnoth. In short, Akladians are a barbarian people, coming from east, flying from slavery, who took control over the decadent Wesnoth kingdom. The story begins later, when Gawen, son of the Akladian king and a Wesnoth noblewoman, have to fight his way to the throne, reconciliate Wesnothians and Akladians to face the threat of a powerful necromancer.<br />
<br />
The campaign is a classical skirmish with some large battles, and some riddles to solve. You'll play here Akladian and Khalifate factions. <br />
<br />
'''Summary:''' It is one of the more old and mature projects in UMC (eight years old !), polished and enhanced for years, and still actively updated.<br />
<br />
At first glance, the story can look classical and boring, but it is one of the best campaign story one can find: interesting and various characters, many plot twists, a real world description make the story really interesting and original. Not for children, as the note says, should be understood as being not the kind of childish fancy most campaigns are built on. Maps and battles have been thoroughly designed and balanced, and everything could be said perfect here, with a slight reservation about graphics (but they're progressing for now).<br />
<br />
A classic which many different people can enjoy.<br />
<br />
'''Surroundings:''' 8<br />
<br />
'''Design:''' 8<br />
<br />
'''Story:''' 10<br />
<br />
'''Fun:''' 8<br />
<br />
'''Replay value:''' 6<br />
<br />
'''Player note:''' 10<br />
<br />
<br />
=== Antar, Son of Rheor ===<br />
==== Review by Dugi ====<br />
'''Tags:''' loyalists, skirmish, dungeon<br />
<br />
'''Description:''' A noble's property is attacked by undead, and he has to retaliate in order to stop the undead peril. In his journey, he passes through many other settlements, some of them are attacked by the undead too, some are just naturally hostile, some are corrupted by the promise of immortality the undeath brings and send undead legions to fight him. All of them seem to be just minions of a stronger force, but before he is reached, the end of completed part is here. 9 out of intended 17 scenarios complete.<br />
<br />
'''Summary:''' The scenarios are designed very well, assuring that you will not get bored. Many events take place in the middles of scenarios, making scenarios less usual and different from others. Although this is a nice feature, you are frequently surprised by many elements you cannot expect and it breaks planning. There are a few special units, who have special AMLA or some special abilities, that have an unusual and very practical use on the battlefield. It is balanced quite well despite its incompleteness. The story didn't impress me, though. It is very usual, a group of loyalists going to stop a rise of a lich lord whose dreams of conquest are a endangering anyone is classic. Do not expect anything from minor events neither, the encounters in scenarios are pretty mainstream story-wise as well. Unexpected end in the middle of campaign is a really unpleasant surprise too. There is a little need to replay it, because you will know what will happen, and many of these encounters are easy with proper recruits, but maybe a few years will provide a decent amnesia for that. For short, it is a campaign strongly focusing on interesting gameplay, but if you seek heavy challenges or a deeper plot, this is not what you want.<br />
<br />
'''Surroundings:''' 7<br />
<br />
'''Design:''' 10<br />
<br />
'''Story:''' 6<br />
<br />
'''Fun:''' 7<br />
<br />
'''Replay value:''' 7<br />
<br />
'''Player Note:''' 8 (if I forget the missing end, and assume that these scenarios are like the existing ones)<br />
<br />
<br />
==== Review by tribes55, dean ====<br />
'''"Tags:"''' Adventurous,Intriguing<br />
<br />
'''"Description:"''' You play as a limited Loyalist faction, and are mainly fighting Undead, Orcish units and goblins. You have alliances with Dwarves and Elves.<br />
<br />
'''"Summary:"''' I liked how the campaign required thinking outside of the box, but I didn't like how on the first scenario there was VERY limited strategies you could use to win. Most scenarios are not like this in this campaign, though.<br />
<br />
'''"Surroundings:"''' Your surroundings are constantly changing, but the maps are always interesting and in some scenarios rewarding for exploring them. 8/10<br />
<br />
'''"Design:"''' The scenarios aren't repetitive and leave you wanting to play the next campaign. 8/10<br />
Story: Seeing as the story is what makes me want to play the campaign, and this one kept me to the very end of the currently limited scenarios I'd give it story a 8/10.<br />
<br />
'''"Fun:"''' * Very rarely was I bored. 7/10<br />
Replay value: * Some scenarios challenge you to do the Scenario in a more efficient way which would make me want to replay the campaign and see what I could do better this time. 7/10<br />
<br />
Player note: * <br />
Overall rating would be 8/10.<br />
<br />
<br />
=== Count Kromire ===<br />
==== Review by Dugi ====<br />
'''Tags:''' custom era, vampires, skirmish<br />
<br />
'''Description:''' A vampire campaign. In our culture, there are two kinds of vampires, first the evil bloodthirsty creatures that are usually counts and dukes and rule over small realms in dark mountains, and second, the eternal high school kids who fall in love with teens. Of course, this is about the first, cool kind of vampires. A bloodsucker has lost his land to celestials, and fights to get it back. He forges an alliance with other vampires and a strange order of humans (Windsong), and together they defeat the celestials and get his land back.<br />
<br />
'''Summary:''' It starts in a really cool way, you have two vampires and have to bite peasants to get more vampires from them. However, you will quickly get the ability to recruit them (because getting all units from plague making level 0 units would be a pain). Most of the campaign is rather classical, with well-designed and well-balanced scenarios. You play with vampires, a really interesting faction (with mages, archers, melee fighters, poison, drain on most units). The maps looks somewhat glum, but that is what you'd expect from a land controlled by vamps. They aren't very realistic either, but that actually makes the gameplay better. The way the end happens depends on some previous actions. Dialogues are not bad, quite funny because of a vampire who can't speak properly because of his huge teeth.<br />
<br />
Using a custom era has its downsides, though. Almost all units lack animations, so all combat is like headbutting with blade damage. The lore behind the factions is not as deep as in mainline, so you just don't know the motivations of most enemies to attack you. As a result, the story isn't anything special. It also has quite a strange element, if you let a guy live, he will attack you later for the arrogance of fighting him (he also quite unpleasantly surprises you by turning against you when you defeat the enemies together, for your arrogance, and it might get you defeated very easily if you aren't ready for it). I was really displeased by seeing in a description that vampires are immune to drain and plague, but shouldn't be immune to poison, but the engine does not allow it, that was total bullshit, but that is rather a part of the era.<br />
<br />
If you are bored with default era and can ignore the lack of animations, you will like it. If you seek gameplay-wise interesting factions, you'll like it too. Also if you are a fan of Twilight and need to learn what are the vampire stories about. But if you are okay with default era and classical factions and seek unusual scenarios and stories, you might not like it.<br />
<br />
'''Surroundings:''' 5<br />
<br />
'''Design:''' 9<br />
<br />
'''Story:''' 7<br />
<br />
'''Fun:''' 9<br />
<br />
'''Replay value:''' 7<br />
<br />
'''Player Note:''' 7<br />
<br />
=== Fate of a Princess ===<br />
==== Review by Paulomat4 ====<br />
'''Tags:''' elves, rogues, riders, skirmish, dungeon, RPG<br />
<br />
Part I: Baldres, a notorious robber baron, flees Wesnoth with his followers and sets off into the northlands to evade the kings justice. The barons deeds and misdeeds are to change the balance of power between orcs and non-orcs throughout the northlands, and will carry consequences long after his eventual death.<br />
Part II: The Greenwood elves face a crisis which demands the return of the queen's estranged half-elven half-sister, Baldreds daughter. Two brave young elves must make a perilous journey to find her and bring her back to her former home. If they fail, the whole northlands will be engulfed in war with the resurgent orcs...<br />
<br />
'''Summary:''' Nice story, which is composed of two parts. In the first part you mainly fight with bandit knights, and often have to rush from one point to another. in the second part, gameplay consists of elves, and various other races like drakes or saurians or dwarves. You will fight various races in the first part, and mostly orcs in the second. The campaign feature many custom units, and some your heroes will even have AMLA advancements. Also you will be able to collect many items through the campaign, which may cause some units to be overpowered but this is also bound to storyline reasons. The story reveals a lot about the northlands and their different factions.<br />
<br />
'''Surroundings:''' 8<br />
<br />
'''Design:''' 9<br />
<br />
'''Story:''' 7<br />
<br />
'''Fun:''' 9<br />
<br />
'''Replay value:''' 8<br />
<br />
'''Player Note:''' 8<br />
<br />
=== Invasion from the Unknown ===<br />
==== Review by Dugi ====<br />
'''Tags:''' elves, undead, skirmish, dungeon, puzzle<br />
<br />
'''Description:''' Starting with usual elves in forests and deserts, quickly adding the undead faction in a battle against several custom factions, evil human army, mysterious Verlissh, sinister demons, robotic automatons and dreadful, biomechanic Shaxtrals, that progresses through caves and steppes into the mysterious Dark Hive, where the Shadow Master dwells. 30 scenarios. Complete.<br />
<br />
'''Summary:''' This campaign has a good and interesting story, enough long to develop an army of recalls an use it well. You will encounter many new kinds of enemies, assuring that you will never get bored, even if you aren't a fan of the default era. Its gameplay is unique in many ways, frequently, the enemies are just coming, and you have to pass through the area instead of defeating some leader. Another speciality are boss fights, when you can defeat a boss only using some special technique. The campaign is also balanced pretty well, easy difficulty is to enjoy the story, hard difficulty is really challenging.<br />
However, almost all new units lack animations of any kind, that harms the visual part of this add-on. Also, some elements of the storyline are too exaggerated. But these little problems will not spoil anything.<br />
<br />
'''Surroundings:''' 7<br />
<br />
'''Design:''' 10<br />
<br />
'''Story:''' 9<br />
<br />
'''Fun:''' 10<br />
<br />
'''Replay value:''' 7<br />
<br />
'''Player Note:''' 10<br />
<br />
''Review by Dugi''<br />
<br />
==== Review by lipk ====<br />
Invasion from the Unknown was the first add-on I played (not completely unrelated to the fact that it was first entry in the campaign list back in the 1.8 days) and is still among my favorites. IftU has exceptionally well-designed maps, loads of custom terrain and units, and even some portrait art. The world is rich and detailed, it makes you want to press on to explore it deeper. The plot isn't a strong point of the campaign, though, it's awfully linear (that wouldn't be a problem on it's own right if it was shorter, but in 20+ scenarios, it would be nice to see some twists), and anyone who's familiar with UtBS should notice that it pretty much lacks originality, too. I didn't like the game play either; the campaign turns into a sequence of dungeon crawls and megalomaniac battles very early on, both of which I find slow and boring. That might be just my taste, though.<br />
<br />
All in all, Invasion from the Unknown is a well put-together product. It has major flaws regarding scenario and plot design, which might severely reduce the replay value of this campaign, but it's certainly worth playing at least once.<br />
<br />
'''Surroundings:''' 9<br />
<br />
'''Design:''' 6<br />
<br />
'''Story:''' 7<br />
<br />
'''Fun:''' 8<br />
<br />
'''Replay value:''' 4<br />
<br />
'''Player note:''' 7<br />
<br />
=== Legend of the Invincibles ===<br />
==== Review by Raijer ====<br />
'''Description''': A huge campaign that will be 10 chapters long (9 chapters currently), and will have more than 200 scenarios. This campaign follows 2 heroes that find a way to eternal life, going through times, before and after the Fall, and witnessing some of the most important events in Wesnoth's history, like the raise of the second sun.<br />
<br />
The player will be able to use humans, elves, but also undead and some special units, and will fight against basically anything you can imagine, going from orcs to demons and passing by some robots. It includes an item system, with enemy drops, crafting and gears, giving additions to units' normal attacks. The history permits to get a huge recall list, with level 4 units in the main races used and new AMLAs possibilities.<br />
<br />
'''Summary''': This campaign has a really long story, which explains some of Wesnoth's history that wasn't talked much about in other campaigns. Despite its length, it actually never gets boring because the story is well-done, stays really coherent, but also because of the scenarios' diversity, having huge battles but also some dungeons, and special objectives. I really like how this campaign makes a mix of Wesnoth's turn-based system and the basic RPG's system, like spells, items, crafting and more… But also because it creates new strategies that can't be found in normal campaigns, thanks to the item system and AMLAs that weren't really used in other campaigns, while keeping Wesnoth's basic way of playing. The difficulty is pretty much standard, as easy being easy for everyone, and hard being really hard and most likely a huge tactical challenge. Though some scenarios in normal can be seen as really easy or really hard.<br />
<br />
I'm really happy about this campaign because it permits to personalize your units depending on what you want them to be able to do with the AMLAs, but also with the huge item bank. I also liked the story, because i don't like how some part in Wesnoth's history are left unexplained, and this campaign goes through Irdya's history, filling some blanks. Finally, i would like to say that this campaign can be played again and again, as there are some secret scenarios, but also infinite possibilities with the items and AMLAs, which make each time completely different.<br />
<br />
The bad sides: the item inventory is slow (seems like it will be fixed), can be really annoying in the later parts. The leaders can seem overpowered to unacquainted players though it changes as you advance. The balance isn't complete yet, but it most likely will be done as soon as the story itself is finished. There still are some bugs around, but none that stops from playing as far as i know.<br />
And last, big problem: THERE'S ONLY 1 CHAPTER LEFT BEFORE THE STORY ENDS!<br />
<br />
'''Surroundings''': 7<br />
<br />
'''Design''': 7<br />
<br />
'''Story''': 10<br />
<br />
'''Fun''': 10<br />
<br />
'''Replay value''': 9<br />
<br />
'''Player note''': 10<br />
<br />
<br />
==== Review by bumbadadabum ====<br />
'''Description:''' (quoting Raijer) A huge campaign that will be 10 chapters long (9 chapters currently), and will have more than 200 scenarios. This campaign follows 2 heroes that find a way to eternal life, going through times, before and after the Fall, and witnessing some of the most important events in Wesnoth's history, like the raise of the second sun.<br />
<br />
The player will be able to use humans, elves, but also undead and some special units, and will fight against basically anything you can imagine, going from orcs to demons and passing by some robots. It includes an item system, with enemy drops, crafting and gears, giving additions to units' normal attacks. The history permits to get a huge recall list, with level 4 units in the main races used and new AMLAs possibilities. <br />
<br />
'''Summary:''' I didn't like this campaign a single bit. The scenarios feel like they've been designed 'in a hurry' without paying any attention to detail. The lack of variety or events in scenarios make them very boring to play, and often made me want to just :n and be done with them. The scale of the scenarios is completely blown out of scale, and this makes it extremely tedious to play, as everytime you press the end turn button you have to wait for the literally hundreds of enemies to move. The maps are not horrible, but far from mainline level. The story (which is one of the most important things in a campaign for me) is perhaps one of the worst things about this campaign. The dialog is badly written (in places where it is present. There isn't much dialog outside of starting dialog) and feels completely emotionless. The characters are paper-thin and not very well developed, and that only contributes to my thinking that the entire story is only there to tie the 185 scenarios together. It feels ridiculous and sometimes made me wonder what I was doing with my life, after I read another dialog. The art of the campaign consists mostly of bad frankensteins or horribly drawn units, with the exceptions of the portraits for Efraim and Lethalia, which actually look pretty decent. Overall, I feel like the pretty good idea behind the RPG engine, which in my opinion is also poorly executed, has gone to waste by it being in this campaign. I think this campaign is bad and doesn't deserve any of the praise it often receives on the forums. I would not recommend this campaign to anyone.<br />
<br />
'''Surroundings:''' 4<br />
<br />
'''Design:''' 2<br />
<br />
'''Story:''' 3<br />
<br />
'''Fun:''' 3<br />
<br />
'''Replay value:''' 4<br />
<br />
'''Player note:''' 2<br />
<br />
<br />
==== Review by t3st3r ====<br />
'''Description''': Really large and custom campaign about two heroes who are about to become legendary half-gods. During campaings there are also several "lesser" heroes with remarkable powers and abilities as well, which makes game more interesting for sure. Right now there are 9 chapters, about 200 scenarios (10 planned as far as I know). Largest and most diverse campaign I've seen so far for BfW. And the only campaign I've replayed THREE times. Because I like overall gameplay so much that I has been willing to play it even when there was 3 or 4 chapters ready, so it has been quite incomplete. To my taste it's the most epic campaign for BfW to the date. <br />
<br />
In this campaign player could find nearly all you could expect from decent game scripting engine and seriously customized scenarios. And nearly all you've missed in original BfW campaigns and maps. Great AMLAs, much better than original BfW AMLAs are. Isn't it boring to kill 20 enemies just to get some dumb +3 hp bonus? This campaign corrects this problem: most advancements are actually useful and you can control units development path (to some degree). There are some extra LVLs for many units, this is really adding up. Sure, there could be factions balance issues if you use such settings for PvP, but it's not a problem of campaign itself and it really adds up to gameplay. There will be a number of really strong enemies of truly epic scale. Real dragons, real monsters, real freaks, real arch-enemies. All kings of dangerous things you can imagine and even more than that. Some of them require very custom approach so reading in-game messages/hints is a must. There is decent items system as well. Sure, geared warriors could handle much more than those with bare hands or simple weapons. Some items could even allow "simple" (non-hero) units to challenge some tough monsters on their own. Though many arch-enemies would be hard to kill even for main heroes without proper handling and using their weak points. To my taste, I really like this campaign. In fact it's my favorite campaign, thanks to custome AMLAs, 10 chapters, items system, strong enemies and various twists to add more fun to gameplay. Sometimes you can also use units from previous chapters, which allows you to have strong army of relatively few powerful units, which is just convenient to play. This is taken into account and those who continues from old chapters are facing much stronger resistance than those who starts chapter from scratch with "dummy" heroes and lack of geared and leveled army. There are some secrets and treasures hidden, custom events and so on. There is even some basic form of item crafting, some multi-part artefacts and so on. So players who are careful to details could have some extra/optional fun in game. This is what always distinguishes well thought maps from serious map makers and scripters. So if someone tired of standard boring BfW game mechanics, it's really worth to try this campaign out to see something new, beyond standard BFW mechanics and take some completely new look on familiar storylines.<br />
<br />
'''Summary''': This is a very long campaign, telling the story of two heroes who would follow a long path from mere mortals up to strong half-gods, capable of challenging almost any kinds of <br />
things. This is somewhat mixed into classic BfW storyline and shows it from different point of view, which isn't as simple as it looks like. First chapters show us how heroes would become some immortal and powerful beings, then they will gain more power and finally manage to become half-gods. While it's really long story, there are so many types of enemies, their abilities, new storyline twists, unexpected things and so on, that it's still remains fun to play. Even after you played many chapters already. Sure, some scenarios are lengthy and/or take too much efforts to control units or wait for AI moves. However, if campaign haves ~200 scenarios, it's hard to iron out all issues in just one shot. Yet it still impressive already, especially granted that it's still work in progress and is not yet complete. <br />
<br />
Difficulty of this campaign varies. Depending on paths you've taken, units equipent and how all this affects certain enemies, some enemies could be easier/harder than others. On normal difficulty level it should be manageable for seasoned BfW player. I would not recommend this campaign to newbies as it would teach you many funny things which will be (unfortunately!) missing in most of other BfW campaigns. Players have to understand it uses enhanced game mechanics. Maps vary wildly, ranging from standard "kill them all" scenarios to RPG and quest style maps. You can develop some really new and uncommon tactics. For example, you can use meteor spell to blow up a host of powerful enemies and then teleport away if situation permits. New abilities for new strategies are nearly countless, thanks to improved AMLAs, items system and new spells and their AMLA improvements.<br />
<br />
In this campaign you can often have "convenient" army composed of relatively few relatively powerful units with some special abilities, complementing each other. As for me, it's annoying to deal with 100 lvl 1 weaklings. I'm as human is inefficient and slow in doing so. This campaign will be far more convenient most of time. It's usually enough to have 10-20 strong units + some heroes to win scenario. <br />
<br />
Though it's noteworthy to mention that advanced items system and AMLAs are making it hard keep it perfectly balanced in all corner cases in all possible combinations, so sometimes you can face some too simple or quite hard maps, unexpectedly. However, unless there is some bug, seasoned BfW players should not have real troubles in most places. And it will feel unique each time you play it, as you will take different paths here and there. That what makes it funny to replay, trying different paths in advancements.<br />
<br />
The most daunting issue to my taste is that BfW core neither really supports items system on it's own, nor it provides any decent UI to deal with items. I think BfW authors should consider adding support for items and items management to the BfW core to make mapmakers life easier. It's not only campaign where this problem exists, there are dozen and half of campaigns sharing same issue. But as this campaign makes extensive use of items, it's where problem is getting really obvious. AI is really dumb and clueless at handling items/extended features, etc. And sometimes in-game computations could take a while, so powerful CPU could be a good idea. I can also admit that authors of various campaigns have minor mismatches in explaining the very same events from BfW world. Ideally, they mismatches have to be corrected but it requires cooperation of large number of independent people and I can understand it's somewhat troublesome to achieve. And of course there are some things to iron out as it's still work in progress. This probably applies to complaints that AI takes a long time to complete turns, etc - on some maps it's really good idea to go to preferences and set "skip AI moves" option on.<br />
<br />
'''Surroundings''': 8<br />
<br />
'''Design''': 8<br />
<br />
'''Story''': 9<br />
<br />
'''Fun''': 10<br />
<br />
'''Replay value''': 9<br />
<br />
'''Player note''': 10<br />
<br />
<br />
=== Panther Lord ===<br />
==== Review by taptap ====<br />
Panther Lord is one of my favourite campaigns and on higher difficulties one of the most challenging. Unlike many campaigns with an anticlimactic end (Northern Rebirth, Heir to the Throne etc.) it is unrelenting from start until the end (I suffered more than 140 casualties during its 14 scenarios). Velensk is a good player and it shows. <br />
<br />
This is the showcase campaign for the Era of Four Moons, while Salt Wars is a short and much easier introduction. The Era itself is well balanced, with many novel ideas and no elves. Admittedly, at first I shuddered at the idea of playing "half-naked wild with dark-coloured sprites" - I was quite troubled that it might be a collection of racist stereotypes, but playing with it, it certainly didn't feel so. (Much better indeed than the typical association of orcs in Tolkien-esque fantasy with mongols / turks.) There aren't only tribal Darklanders and Highlanders, but Sea States and Imperialists as well. Each of them plays very differently, none of them is depicted as timeless or "always chaotic evil", even the Imperialists, the enemies in the campaign, get the opportunity to declare themselves. It certainly benefits from the background world (IALFA developed by the maintainer of the campaign) even if you only see a glimpse of it. <br />
<br />
The hero of the campaign is a mercenary outcast of his own Darklander civilization. When learning about plans to raze and colonize the jungles of his people by the imperialists he starts the quest to rescue his people. His friend the Panther spirit, to whom the campaign owes its name, always at his side, he is rallying troops and mercenaries around him, but soon he has to realize that change is inevitable. Changing their ways they may have hope to withstand or else they will be changed by force and subjugation. But how to convince his own people when he is an upstart at best, a traitor and spirit-friend at worst?<br />
<br />
While the campaign is centered around Darklanders, the player has the choice of hiring (and recalling) a limited amount of highly useful mercenaries of the other factions of the Era. The campaign features small scale to a few large scale battles and puts different territory to good use encouraging the use of mercenaries and different unit types. I omit the numbers, but this campaign is certainly recommended.<br />
<br />
<br />
=== Swamplings ===<br />
==== Review by Dunno ====<br />
'''Description:''' Swamplings is the name of goblin tribe living in swamps, banished by orcs. In an unfortunate turn of events, those goblins get tangled up in human affairs and must fight for their very survival. The player also learns how goblins started riding wolves.<br />
<br />
'''Summary:''' It's a decent, finished and stable campaign with interesting plot. There are many humorous scenes and some serious ones, there are standard battle scenarios and various original missions. There are also some high quality custom sprites, and maps are very good as well. It won't make your jaw drop, however, it's just a modest, enjoyable campaign.<br />
<br />
'''Surroundings:''' 7<br />
<br />
'''Design:''' 8<br />
<br />
'''Story:''' 8<br />
<br />
'''Fun:''' 9<br />
<br />
<br />
==== Review by Pyrophorus ====<br />
'''Tags:''' goblins,skirmish,story<br />
<br />
'''Description:''' see previous review.<br />
<br />
'''Summary:''' This campaign is very original and imaginative. First of all, it features not chivalrous heroes like most Wesnoth campaigns, but humble and rather stubborn people instead. More of it, the story is much more picaresque than epic, written in a delicious humorous tone, very unusual in Wesnoth world. IMO, it's one of the few really good writing one can find here. It's impossible to abstract this complex story, where everything goes in an unexpected way, to list every strange encounter, funny event and so on. If you like good writing, humor, as well as hardcore fighting, you'll really love this campaign. If not, just as Dunno says, it's honest, no more.<br />
<br />
'''Surroundings:''' 7<br />
<br />
'''Design:''' 8<br />
<br />
'''Story:''' 10<br />
<br />
'''Fun:''' 10<br />
<br />
'''Replay value:''' 7<br />
<br />
<br />
=== Talentless Mage ===<br />
==== Review by Dunno ====<br />
'''Description:''' A humorous story about a mage who managed to learn only one spell in his life and who takes command of N.O.O.B.S. (Noticeably - Optimal - Outstanding - Brilliant - Soldiers) squad. N.O.O.B.S. advance through amla with basic options like melee attack, melee damage etc. <br />
<br />
'''Summary:''' this here is Wesnoth parody at its best. The campaign mocks the common cliches in Wesnoth campaigns and overused events, like loyal units coming out of villages, random magical items scattered around the map and low quality frankensprites. Very absurd and pythonesque at times, you will keep smiling and laughing through the whole story.<br />
<br />
'''Surroundings:''' 6<br />
<br />
'''Design:''' 8<br />
<br />
'''Story:''' 9<br />
<br />
'''Fun:''' 10<br />
<br />
<br />
=== The Library of Kratemaqht ===<br />
==== Review by Wesbane ====<br />
The campaign is about genesis, course and outcome of civil war in empire of Anaktoron.<br />
Surroundings:<br />
The way campaign looks. How it feels and uses game engine is simply amazing and unseen before.<br />
Maps are nicely done although many parts of a map serve for story (decorative) purpose only what is not always good. You will travel through wealthy and populous kingdom which is torn apart by war. To create this impression in most of maps there is a lot of villages and they are placed in large groups, but map look doesn't suffer from it. More over you can feel destruction in game world as never before. Campaign features custom burning houses which are not only mere visual effect but have impact on battle course.<br />
It is one of most cinematic campaigns if not the most. Cutscenes are packed with action and take place in several locations. Also game transition fluently into cutscene and cutscene into game. What makes it even more interesting since you will never know is it just a cutscene?<br />
In terms of visual effects it also features the best epilogue ever.<br />
As it was not enough you can experience a true wesnoth dragon. It is so unusual that it need separate mention.<br />
Dragon is fully animated and have some nice custom sounds. Some of it animations are purely character play. Like roar and feasting. And last, but not least it preserves original wesnoth dragon concepts. It attacks with fangs and tail. Although it primary weapon is ranged magical fire breath which works as AoE attack when used offensively. There is one little bug with its animation, but it can't be noticed during playing it anyway.<br />
In short this campaign surely establish new standards for wesnoth in department of visuals.<br />
Design:<br />
Scenarios design is good. All levels are playable. Objectives are clearly formed, so it is known most of the time what to do. There are several minor bugs and one bigger that affects game to some degree. However they do not make impossible to play and enjoy campaign.<br />
Campaign is using default units although sometimes with unusual traits and abilities. Custom units are also present, but only as much as they are needed. Which is a great thing since it proves designer skill at using available resources. Beside that I really can't stand campaigns introducing many user made units.<br />
I liked much idea of premagic era and weakened magic users. Unfortunately any extra mages aren't useful since you have already better characters of this class. In fact after my recall list was cleaned up after Jevyans Return I never bothered to recruit them again.<br />
Gold carryover system is custom which is not a good choice for classic style adventure. Twenty percent instead of forty. Most probably this is caused by slightly overpopulated maps. Campaign is very easy, except two scenarios: Refugees and Loyalty's Cruel Reward. There is no moderately difficult scenarios. The huge difference between average level difficulty and hardest level is just to big. Most difficult scenarios are Refugees and Loyaltys Cruel Reward.<br />
Story:<br />
Amount of delivered information is enough. Writing style is good. Beginning is terrific. Switching between protagonists is cool, and quite innovative idea. Overall concept is nicely executed and creator skillfully merged a lot of facts from mainline into own story. To fully appreciate this playing The Rise of Wesnoth is recommended. However ending I found disappointing. It seemed rushed and unconvincing. Also few details don't match to reality of Irdya.<br />
Fun:<br />
Campaign is definitely entertaining. Well done battles. Good dialog. And full of fresh ideas. You can play as good and bad in a single campaign! Although I have nothing against being awesome most of the time enemies fell way to easily to my taste.<br />
Replay value:<br />
Campaign is nicely done and straight forward. Although there is nothing that would reject you from playing it again, there is nothing that would encourage you to do that either. No hidden secrets, no tactical challenges, no extra levels. No satisfying ending.<br />
<br />
Summary:<br />
Overall it is well made, really great, easy campaign suitable for beginners with story explaining some events from The Rise of Wesnoth. Bringing new standards in design, especially visual ones. It story is shown from several angles what is unique feature, but unfortunately potential of this solution wasn't used at all. If you are looking for deep plot, and tactical challenge you won't find it here.<br />
<br />
'''Surroundings: 10<br />
<br />
'''Design: 6<br />
<br />
'''Story: 7<br />
<br />
'''Fun: 7<br />
<br />
'''Replay value: 5<br />
<br />
'''Campaign score: 7<br />
<br />
'''Player note: 8<br />
<br />
'''Link to review:''' [http://forums.wesnoth.org/viewtopic.php?f=8&t=37798&start=45#p551674]<br />
<br />
<br />
=== To Lands Unknown ===<br />
==== Review by Dunno ====<br />
'''Description:''' This campaign tells about Mehir, a Summoner, who's working on a great quest of making the biggest magical circle ever made. If he and other summoners succeed, activating the circle will bring them to the Abyss, the lands unknown.<br />
<br />
'''Summary:''' The main idea behind this campaign and the Era of Magic (used by To Lands Unknown) is to take Wesnoth graphics to an entirely new level. Maps are no longer simple, repetitive hexes, instead many maps are absolutely mindblowing landscapes. In addition, all units are well made and animated. The story and gameplay, however, could have been done better. The campaign is quite long, and at times battles get boring.<br />
<br />
'''Surroundings:''' 10<br />
<br />
'''Design:''' 7<br />
<br />
'''Story:''' 5<br />
<br />
'''Fun:''' 6<br />
<br />
<br />
== Back to Guide to UMC Campaigns ==<br />
* '''[http://wiki.wesnoth.org/index.php?title=Guide_to_UMC_Campaigns Guide to UMC Campaigns]'''<br />
<br />
<br />
== Feedback Thread ==<br />
If you have criticism, ideas and suggestions then please post it in the feedback thread.<br />
<br />
Or maybe you don't want, or don't know how to edit the wiki page, then you can post your review also here. I will add it then to this page.<br />
* '''[http://forums.wesnoth.org/viewtopic.php?f=17&t=38946 Feedback Thread]'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=Player_UMC_Reviews&diff=51523Player UMC Reviews2013-06-27T13:42:40Z<p>Lipk: /* Invasion from the Unknown */</p>
<hr />
<div>''This is a place where you can add your reviews for the current (1.10.x/1.11.x) UMC campaigns. Please edit, it is a wiki.''<br />
<br />
<br />
<br />
<br />
<br />
<br />
=== Blueprint [add the name of the reviewed campaign here] ===<br />
==== Review by [add your name here] (version number of reviewed campaign) ====<br />
<br />
'''Tags:''' * describe the add-on using a few keywords<br />
<br />
'''Review:''' * personal evaluation of the campaign taking into account different aspects such as gameplay, plot, map design, art, etc.<br />
<br />
'''Surroundings''' * add your rating of the visual part of the add-on here (1-10)<br />
<br />
'''Design:''' * add your rating of the general quality of scenarios here (1-10)<br />
<br />
'''Story:''' * add your rating of the story's quality here (1-10)<br />
<br />
'''Fun:''' * add your rating how much enjoyment did this add-on bring to you here (1-10)<br />
<br />
'''Replay value:''' * add your rating about your tendency to play this add-on again here (1-10)<br />
<br />
'''Player note:''' * add your overall rating here (1-10)<br />
<br />
'''Link to review:''' * if you copied the review from the forums then add the related link here<br />
<br />
== Battle for Wesnoth UMC campaign / reviews ==<br />
<br />
''Reviews for Campaigns available in the 1.10.x stable and 1.11.x development versions.''<br />
<br />
<br />
=== After the Storm ===<br />
==== Review by vultraz ====<br />
'''Tags:''' fall, dungeon, elves<br />
<br />
'''Description:''' After the Emperor of Chaos was defeated, the free civilizations of the Great Continent hoped that his followers would abandon the ongoing war. Meanwhile, Galas and his unlikely band of heroes head back to the northern lands to request aid for their next journey.<br />
<br />
'''Summary:''' This campaign is, in my opinion, one of the very best UMC campaigns. It follows the story of Elynia and her band and their adventures following the events of <i>Invasion from the Unknown</i>. Since the campaign is divided into three episodes, I'll talk about each one separately.<br />
<br />
<b>Episode 1:</b> This one starts out slow, but speeds up pretty soon. The first few scenarios capture your attention and want to make you keep playing. It features an appearance of Zocthanol Isle from <i>Under the Burning Suns</i>, which I find quite nice. The late scenarios feature, as in all the episodes, AtS's signature dungeon crawling scenarios, of which I am very fond. My only complaint about this episode would be the third scenario, which is quite tedious after you build up a strong force. Other than that, a good episode.<br />
<br />
<b>Episode 2:</b> This episode jumps in right after the cliffhanger end of episode 1, and finds Elynia 1 year into the future as a result of the explosion in Wesmere. We quickly jump right into the action, and discover a very important character in scenario 2. There are a bunch of nice plot points here, including the deal made with the demon lord, and Elynia's journey to the valley from the beginning of IftU. As before, the last few scenarios feature AtS's dungeon crawling, including a very large scenario 10 map. The episode ends on what I consider a beautiful cutscene, one which finishes with a perfect flair.<br />
<br />
<b>Episode 3:</b> Shadowmaster truly saved the best for last, here. Several amazing plot points come into play in this scenario, as well as an introducing of many new characters and custom units. This episode brings together almost all the plot threads that had been laid throughout the previous two episodes and IftU and wraps them up in an elegant bow, while at the same time exploring in new directions. Gameplay wise, he managed to keep the scenarios interesting and fun after all this time. More dungeon crawling, and a gigantic final scenario followed by several cutscenes wrap up this amazing campaign. One little complaint might be about scenario 4, which I found quite hard to beat.<br />
<br />
All in all, I thoroughly enjoyed this campaign and its story. The maps, characters, and gameplay had me hooked, and I recommend this campaign to anyone.<br />
<br />
'''Surroundings:''' 10<br />
<br />
'''Design:''' 10<br />
<br />
'''Story:''' 10<br />
<br />
'''Fun:''' 10<br />
<br />
'''Replay value:''' 9<br />
<br />
'''Player Note:''' 10<br />
<br />
==== Review by bumbadadabum (0.9.2+svn) ====<br />
<br />
'''Review:''' Although it starts out quite slow, and has some lesser parts in there, I have to say that this is one of the best wesnoth campaigns I've played, and in my opinion even beats its prequel, <i>Invasion from the Unknown</i>. It's very well coded with great attention to detail, has a very good story, and very good maps, especially in Episode 3. The gameplay consists of a variety of battle scenarios, which feel very epic without the scale being too big, and a lot of dungeon-crawling scenarios, broken up with the occasional cutscene. It's not very easy, and it forces you to have a plan for the scenario, which is something I like. Because of the design of the campaign (the episodes all feel like separate campaigns) I'm going to talk about them separately.<br />
<br />
<b>Episode 1:</b><br />
This one starts off slow, with the first few scenarios having little interesting things happening, both gameplay- and storywise, although they weren't bad either. Once things start happening though, the story gets much better and the gameplay more interesting (I especially liked scenario 4 and 5), up until the last few scenarios, when some very abrupt (and almost unnecessary in my opinion) events take place, which actually left me speechless the first time I witnessed them. Another thing that left me speechless was the final cutscene, which was masterfully done and was one of the best in this campaign. In short, it starts off slow, but keeps accelerating once you progress further into the story. It's very well done overall, but it has some things I don't like.<br />
<br />
<b>Episode 2:</b><br />
Episode 2 starts off a bit slow once again, but quickly introduces the player to some important characters and gets us back into the main storyline. It features quite a lot of plot twist, and was especially fun to play through the first time. The gameplay is little different from E1's in that it features a lot of "Defeat enemy leaders" scenarios, but the variety in maps and enemies made it so it wasn't boring. It does however, feature my least favorite scenario in this campaign, scenario 6, but the last 5 scenarios more than make up for this by being some of the best scenarios in this campaign. The final boss and ending cutscene were again very fun, and served as a nice ending of the episode.<br />
<br />
<b>Episode 3</b>:<br />
I can't express how much I liked this episode. I was hooked from beginning to end, and played it all in one session. It immediately starts with, in my opinion, the best opening to a campaign I've ever seen, and got me into the story immediately. The scenarios in this episode are much more story-driven than the others, and the gameplay didn't disappoint either. The next few scenarios, although the were hard at times and frustrated me a bit) were still a lot of fun, but after scenario 6 is when things really start. The story divides into 2 branches. One of them is filled with epic battles, and is considerably less story-driven than the other one. The other one almost plays like a cutscene, and features the best atmosphere I've ever encountered in a campaign. The story keeps accelerating and expanding, and climaxes in very well made final boss. It has an open ending, and leaves much room for speculation. I'm not going to spoil much more, since I'd recommend everyone to play it.<br />
<br />
I'd rate this campaign as nearly flawless, if it'd only be based on the last episode; the other 2 are sometimes lacking a bit of pacing, and some scenarios were a bit frustrating. Overall, I think this is a great campaign, and was worth playing every minute.<br />
<br />
'''Surroundings:''' 9<br />
<br />
'''Design:''' 9<br />
<br />
'''Story:''' 10<br />
<br />
'''Fun:''' 9<br />
<br />
'''Replay value:''' 8<br />
<br />
'''Player note:''' 9<br />
<br />
=== A New Order ===<br />
==== Review by Pyrophorus ====<br />
'''Tags:''' Akladians,skirmish,story<br />
<br />
'''Description:''' A new Order is a rather long campaign, telling the story of the Akladians reign over Wesnoth. In short, Akladians are a barbarian people, coming from east, flying from slavery, who took control over the decadent Wesnoth kingdom. The story begins later, when Gawen, son of the Akladian king and a Wesnoth noblewoman, have to fight his way to the throne, reconciliate Wesnothians and Akladians to face the threat of a powerful necromancer.<br />
<br />
The campaign is a classical skirmish with some large battles, and some riddles to solve. You'll play here Akladian and Khalifate factions. <br />
<br />
'''Summary:''' It is one of the more old and mature projects in UMC (eight years old !), polished and enhanced for years, and still actively updated.<br />
<br />
At first glance, the story can look classical and boring, but it is one of the best campaign story one can find: interesting and various characters, many plot twists, a real world description make the story really interesting and original. Not for children, as the note says, should be understood as being not the kind of childish fancy most campaigns are built on. Maps and battles have been thoroughly designed and balanced, and everything could be said perfect here, with a slight reservation about graphics (but they're progressing for now).<br />
<br />
A classic which many different people can enjoy.<br />
<br />
'''Surroundings:''' 8<br />
<br />
'''Design:''' 8<br />
<br />
'''Story:''' 10<br />
<br />
'''Fun:''' 8<br />
<br />
'''Replay value:''' 6<br />
<br />
'''Player note:''' 10<br />
<br />
<br />
=== Antar, Son of Rheor ===<br />
==== Review by Dugi ====<br />
'''Tags:''' loyalists, skirmish, dungeon<br />
<br />
'''Description:''' A noble's property is attacked by undead, and he has to retaliate in order to stop the undead peril. In his journey, he passes through many other settlements, some of them are attacked by the undead too, some are just naturally hostile, some are corrupted by the promise of immortality the undeath brings and send undead legions to fight him. All of them seem to be just minions of a stronger force, but before he is reached, the end of completed part is here. 9 out of intended 17 scenarios complete.<br />
<br />
'''Summary:''' The scenarios are designed very well, assuring that you will not get bored. Many events take place in the middles of scenarios, making scenarios less usual and different from others. Although this is a nice feature, you are frequently surprised by many elements you cannot expect and it breaks planning. There are a few special units, who have special AMLA or some special abilities, that have an unusual and very practical use on the battlefield. It is balanced quite well despite its incompleteness. The story didn't impress me, though. It is very usual, a group of loyalists going to stop a rise of a lich lord whose dreams of conquest are a endangering anyone is classic. Do not expect anything from minor events neither, the encounters in scenarios are pretty mainstream story-wise as well. Unexpected end in the middle of campaign is a really unpleasant surprise too. There is a little need to replay it, because you will know what will happen, and many of these encounters are easy with proper recruits, but maybe a few years will provide a decent amnesia for that. For short, it is a campaign strongly focusing on interesting gameplay, but if you seek heavy challenges or a deeper plot, this is not what you want.<br />
<br />
'''Surroundings:''' 7<br />
<br />
'''Design:''' 10<br />
<br />
'''Story:''' 6<br />
<br />
'''Fun:''' 7<br />
<br />
'''Replay value:''' 7<br />
<br />
'''Player Note:''' 8 (if I forget the missing end, and assume that these scenarios are like the existing ones)<br />
<br />
<br />
==== Review by tribes55, dean ====<br />
'''"Tags:"''' Adventurous,Intriguing<br />
<br />
'''"Description:"''' You play as a limited Loyalist faction, and are mainly fighting Undead, Orcish units and goblins. You have alliances with Dwarves and Elves.<br />
<br />
'''"Summary:"''' I liked how the campaign required thinking outside of the box, but I didn't like how on the first scenario there was VERY limited strategies you could use to win. Most scenarios are not like this in this campaign, though.<br />
<br />
'''"Surroundings:"''' Your surroundings are constantly changing, but the maps are always interesting and in some scenarios rewarding for exploring them. 8/10<br />
<br />
'''"Design:"''' The scenarios aren't repetitive and leave you wanting to play the next campaign. 8/10<br />
Story: Seeing as the story is what makes me want to play the campaign, and this one kept me to the very end of the currently limited scenarios I'd give it story a 8/10.<br />
<br />
'''"Fun:"''' * Very rarely was I bored. 7/10<br />
Replay value: * Some scenarios challenge you to do the Scenario in a more efficient way which would make me want to replay the campaign and see what I could do better this time. 7/10<br />
<br />
Player note: * <br />
Overall rating would be 8/10.<br />
<br />
<br />
=== Count Kromire ===<br />
==== Review by Dugi ====<br />
'''Tags:''' custom era, vampires, skirmish<br />
<br />
'''Description:''' A vampire campaign. In our culture, there are two kinds of vampires, first the evil bloodthirsty creatures that are usually counts and dukes and rule over small realms in dark mountains, and second, the eternal high school kids who fall in love with teens. Of course, this is about the first, cool kind of vampires. A bloodsucker has lost his land to celestials, and fights to get it back. He forges an alliance with other vampires and a strange order of humans (Windsong), and together they defeat the celestials and get his land back.<br />
<br />
'''Summary:''' It starts in a really cool way, you have two vampires and have to bite peasants to get more vampires from them. However, you will quickly get the ability to recruit them (because getting all units from plague making level 0 units would be a pain). Most of the campaign is rather classical, with well-designed and well-balanced scenarios. You play with vampires, a really interesting faction (with mages, archers, melee fighters, poison, drain on most units). The maps looks somewhat glum, but that is what you'd expect from a land controlled by vamps. They aren't very realistic either, but that actually makes the gameplay better. The way the end happens depends on some previous actions. Dialogues are not bad, quite funny because of a vampire who can't speak properly because of his huge teeth.<br />
<br />
Using a custom era has its downsides, though. Almost all units lack animations, so all combat is like headbutting with blade damage. The lore behind the factions is not as deep as in mainline, so you just don't know the motivations of most enemies to attack you. As a result, the story isn't anything special. It also has quite a strange element, if you let a guy live, he will attack you later for the arrogance of fighting him (he also quite unpleasantly surprises you by turning against you when you defeat the enemies together, for your arrogance, and it might get you defeated very easily if you aren't ready for it). I was really displeased by seeing in a description that vampires are immune to drain and plague, but shouldn't be immune to poison, but the engine does not allow it, that was total bullshit, but that is rather a part of the era.<br />
<br />
If you are bored with default era and can ignore the lack of animations, you will like it. If you seek gameplay-wise interesting factions, you'll like it too. Also if you are a fan of Twilight and need to learn what are the vampire stories about. But if you are okay with default era and classical factions and seek unusual scenarios and stories, you might not like it.<br />
<br />
'''Surroundings:''' 5<br />
<br />
'''Design:''' 9<br />
<br />
'''Story:''' 7<br />
<br />
'''Fun:''' 9<br />
<br />
'''Replay value:''' 7<br />
<br />
'''Player Note:''' 7<br />
<br />
=== Fate of a Princess ===<br />
==== Review by Paulomat4 ====<br />
'''Tags:''' elves, rogues, riders, skirmish, dungeon, RPG<br />
<br />
Part I: Baldres, a notorious robber baron, flees Wesnoth with his followers and sets off into the northlands to evade the kings justice. The barons deeds and misdeeds are to change the balance of power between orcs and non-orcs throughout the northlands, and will carry consequences long after his eventual death.<br />
Part II: The Greenwood elves face a crisis which demands the return of the queen's estranged half-elven half-sister, Baldreds daughter. Two brave young elves must make a perilous journey to find her and bring her back to her former home. If they fail, the whole northlands will be engulfed in war with the resurgent orcs...<br />
<br />
'''Summary:''' Nice story, which is composed of two parts. In the first part you mainly fight with bandit knights, and often have to rush from one point to another. in the second part, gameplay consists of elves, and various other races like drakes or saurians or dwarves. You will fight various races in the first part, and mostly orcs in the second. The campaign feature many custom units, and some your heroes will even have AMLA advancements. Also you will be able to collect many items through the campaign, which may cause some units to be overpowered but this is also bound to storyline reasons. The story reveals a lot about the northlands and their different factions.<br />
<br />
'''Surroundings:''' 8<br />
<br />
'''Design:''' 9<br />
<br />
'''Story:''' 7<br />
<br />
'''Fun:''' 9<br />
<br />
'''Replay value:''' 8<br />
<br />
'''Player Note:''' 8<br />
<br />
=== Invasion from the Unknown ===<br />
==== Review by Dugi ====<br />
'''Tags:''' elves, undead, skirmish, dungeon, puzzle<br />
<br />
'''Description:''' Starting with usual elves in forests and deserts, quickly adding the undead faction in a battle against several custom factions, evil human army, mysterious Verlissh, sinister demons, robotic automatons and dreadful, biomechanic Shaxtrals, that progresses through caves and steppes into the mysterious Dark Hive, where the Shadow Master dwells. 30 scenarios. Complete.<br />
<br />
'''Summary:''' This campaign has a good and interesting story, enough long to develop an army of recalls an use it well. You will encounter many new kinds of enemies, assuring that you will never get bored, even if you aren't a fan of the default era. Its gameplay is unique in many ways, frequently, the enemies are just coming, and you have to pass through the area instead of defeating some leader. Another speciality are boss fights, when you can defeat a boss only using some special technique. The campaign is also balanced pretty well, easy difficulty is to enjoy the story, hard difficulty is really challenging.<br />
However, almost all new units lack animations of any kind, that harms the visual part of this add-on. Also, some elements of the storyline are too exaggerated. But these little problems will not spoil anything.<br />
<br />
'''Surroundings:''' 7<br />
<br />
'''Design:''' 10<br />
<br />
'''Story:''' 9<br />
<br />
'''Fun:''' 10<br />
<br />
'''Replay value:''' 7<br />
<br />
'''Player Note:''' 10<br />
<br />
''Review by Dugi''<br />
<br />
==== Review by lipk ====<br />
Invasion from the Unknown was the first add-on I played (not completely unrelated to the fact that it was first entry in the campaign list back in the 1.8 days) and is still among my favorites. IftU has exceptionally well-designed maps, loads of custom terrain and units, and even some portrait art. The world is rich and detailed, it makes you want to press on to explore it deeper. The plot isn't a strong point of the campaign, though, it's awfully linear (that wouldn't be a problem on it's own right if it was shorter, but in 20+ scenarios, it would be nice to see some twists), and anyone who's familiar with UtBS should notice that it pretty much lacks originality, too. I didn't like the game play either; the campaign turns into a sequence of dungeon crawls and megalomaniac battles very early on, both of which I find slow and boring. That might be just my taste, though.<br />
<br />
All in all, Invasion from the Unknown is a well put-together product. It has major flaws regarding scenario and plot design, which might severely reduce the replay value of this campaign, but it's certainly worth playing at least once.<br />
<br />
'''Surroundings:''' 9<br />
<br />
'''Design:''' 6<br />
<br />
'''Story:''' 7<br />
<br />
'''Fun:''' 8<br />
<br />
'''Replay value:''' 4<br />
<br />
'''Player note:''' 7<br />
<br />
=== Legend of the Invincibles ===<br />
==== Review by Raijer ====<br />
'''Description''': A huge campaign that will be 10 chapters long (9 chapters currently), and will have more than 200 scenarios. This campaign follows 2 heroes that find a way to eternal life, going through times, before and after the Fall, and witnessing some of the most important events in Wesnoth's history, like the raise of the second sun.<br />
<br />
The player will be able to use humans, elves, but also undead and some special units, and will fight against basically anything you can imagine, going from orcs to demons and passing by some robots. It includes an item system, with enemy drops, crafting and gears, giving additions to units' normal attacks. The history permits to get a huge recall list, with level 4 units in the main races used and new AMLAs possibilities.<br />
<br />
'''Summary''': This campaign has a really long story, which explains some of Wesnoth's history that wasn't talked much about in other campaigns. Despite its length, it actually never gets boring because the story is well-done, stays really coherent, but also because of the scenarios' diversity, having huge battles but also some dungeons, and special objectives. I really like how this campaign makes a mix of Wesnoth's turn-based system and the basic RPG's system, like spells, items, crafting and more… But also because it creates new strategies that can't be found in normal campaigns, thanks to the item system and AMLAs that weren't really used in other campaigns, while keeping Wesnoth's basic way of playing. The difficulty is pretty much standard, as easy being easy for everyone, and hard being really hard and most likely a huge tactical challenge. Though some scenarios in normal can be seen as really easy or really hard.<br />
<br />
I'm really happy about this campaign because it permits to personalize your units depending on what you want them to be able to do with the AMLAs, but also with the huge item bank. I also liked the story, because i don't like how some part in Wesnoth's history are left unexplained, and this campaign goes through Irdya's history, filling some blanks. Finally, i would like to say that this campaign can be played again and again, as there are some secret scenarios, but also infinite possibilities with the items and AMLAs, which make each time completely different.<br />
<br />
The bad sides: the item inventory is slow (seems like it will be fixed), can be really annoying in the later parts. The leaders can seem overpowered to unacquainted players though it changes as you advance. The balance isn't complete yet, but it most likely will be done as soon as the story itself is finished. There still are some bugs around, but none that stops from playing as far as i know.<br />
And last, big problem: THERE'S ONLY 1 CHAPTER LEFT BEFORE THE STORY ENDS!<br />
<br />
'''Surroundings''': 7<br />
<br />
'''Design''': 7<br />
<br />
'''Story''': 10<br />
<br />
'''Fun''': 10<br />
<br />
'''Replay value''': 9<br />
<br />
'''Player note''': 10<br />
<br />
<br />
==== Review by bumbadadabum ====<br />
'''Description:''' (quoting Raijer) A huge campaign that will be 10 chapters long (9 chapters currently), and will have more than 200 scenarios. This campaign follows 2 heroes that find a way to eternal life, going through times, before and after the Fall, and witnessing some of the most important events in Wesnoth's history, like the raise of the second sun.<br />
<br />
The player will be able to use humans, elves, but also undead and some special units, and will fight against basically anything you can imagine, going from orcs to demons and passing by some robots. It includes an item system, with enemy drops, crafting and gears, giving additions to units' normal attacks. The history permits to get a huge recall list, with level 4 units in the main races used and new AMLAs possibilities. <br />
<br />
'''Summary:''' I didn't like this campaign a single bit. The scenarios feel like they've been designed 'in a hurry' without paying any attention to detail. The lack of variety or events in scenarios make them very boring to play, and often made me want to just :n and be done with them. The scale of the scenarios is completely blown out of scale, and this makes it extremely tedious to play, as everytime you press the end turn button you have to wait for the literally hundreds of enemies to move. The maps are not horrible, but far from mainline level. The story (which is one of the most important things in a campaign for me) is perhaps one of the worst things about this campaign. The dialog is badly written (in places where it is present. There isn't much dialog outside of starting dialog) and feels completely emotionless. The characters are paper-thin and not very well developed, and that only contributes to my thinking that the entire story is only there to tie the 185 scenarios together. It feels ridiculous and sometimes made me wonder what I was doing with my life, after I read another dialog. The art of the campaign consists mostly of bad frankensteins or horribly drawn units, with the exceptions of the portraits for Efraim and Lethalia, which actually look pretty decent. Overall, I feel like the pretty good idea behind the RPG engine, which in my opinion is also poorly executed, has gone to waste by it being in this campaign. I think this campaign is bad and doesn't deserve any of the praise it often receives on the forums. I would not recommend this campaign to anyone.<br />
<br />
'''Surroundings:''' 4<br />
<br />
'''Design:''' 2<br />
<br />
'''Story:''' 3<br />
<br />
'''Fun:''' 3<br />
<br />
'''Replay value:''' 4<br />
<br />
'''Player note:''' 2<br />
<br />
<br />
==== Review by t3st3r ====<br />
'''Description''': Really large and custom campaign about two heroes who are about to become legendary half-gods. During campaings there are also several "lesser" heroes with remarkable powers and abilities as well, which makes game more interesting for sure. Right now there are 9 chapters, about 200 scenarios (10 planned as far as I know). Largest and most diverse campaign I've seen so far for BfW. And the only campaign I've replayed THREE times. Because I like overall gameplay so much that I has been willing to play it even when there was 3 or 4 chapters ready, so it has been quite incomplete. To my taste it's the most epic campaign for BfW to the date. <br />
<br />
In this campaign player could find nearly all you could expect from decent game scripting engine and seriously customized scenarios. And nearly all you've missed in original BfW campaigns and maps. Great AMLAs, much better than original BfW AMLAs are. Isn't it boring to kill 20 enemies just to get some dumb +3 hp bonus? This campaign corrects this problem: most advancements are actually useful and you can control units development path (to some degree). There are some extra LVLs for many units, this is really adding up. Sure, there could be factions balance issues if you use such settings for PvP, but it's not a problem of campaign itself and it really adds up to gameplay. There will be a number of really strong enemies of truly epic scale. Real dragons, real monsters, real freaks, real arch-enemies. All kings of dangerous things you can imagine and even more than that. Some of them require very custom approach so reading in-game messages/hints is a must. There is decent items system as well. Sure, geared warriors could handle much more than those with bare hands or simple weapons. Some items could even allow "simple" (non-hero) units to challenge some tough monsters on their own. Though many arch-enemies would be hard to kill even for main heroes without proper handling and using their weak points. To my taste, I really like this campaign. In fact it's my favorite campaign, thanks to custome AMLAs, 10 chapters, items system, strong enemies and various twists to add more fun to gameplay. Sometimes you can also use units from previous chapters, which allows you to have strong army of relatively few powerful units, which is just convenient to play. This is taken into account and those who continues from old chapters are facing much stronger resistance than those who starts chapter from scratch with "dummy" heroes and lack of geared and leveled army. There are some secrets and treasures hidden, custom events and so on. There is even some basic form of item crafting, some multi-part artefacts and so on. So players who are careful to details could have some extra/optional fun in game. This is what always distinguishes well thought maps from serious map makers and scripters. So if someone tired of standard boring BfW game mechanics, it's really worth to try this campaign out to see something new, beyond standard BFW mechanics and take some completely new look on familiar storylines.<br />
<br />
'''Summary''': This is a very long campaign, telling the story of two heroes who would follow a long path from mere mortals up to strong half-gods, capable of challenging almost any kinds of <br />
things. This is somewhat mixed into classic BfW storyline and shows it from different point of view, which isn't as simple as it looks like. First chapters show us how heroes would become some immortal and powerful beings, then they will gain more power and finally manage to become half-gods. While it's really long story, there are so many types of enemies, their abilities, new storyline twists, unexpected things and so on, that it's still remains fun to play. Even after you played many chapters already. Sure, some scenarios are lengthy and/or take too much efforts to control units or wait for AI moves. However, if campaign haves ~200 scenarios, it's hard to iron out all issues in just one shot. Yet it still impressive already, especially granted that it's still work in progress and is not yet complete. <br />
<br />
Difficulty of this campaign varies. Depending on paths you've taken, units equipent and how all this affects certain enemies, some enemies could be easier/harder than others. On normal difficulty level it should be manageable for seasoned BfW player. I would not recommend this campaign to newbies as it would teach you many funny things which will be (unfortunately!) missing in most of other BfW campaigns. Players have to understand it uses enhanced game mechanics. Maps vary wildly, ranging from standard "kill them all" scenarios to RPG and quest style maps. You can develop some really new and uncommon tactics. For example, you can use meteor spell to blow up a host of powerful enemies and then teleport away if situation permits. New abilities for new strategies are nearly countless, thanks to improved AMLAs, items system and new spells and their AMLA improvements.<br />
<br />
In this campaign you can often have "convenient" army composed of relatively few relatively powerful units with some special abilities, complementing each other. As for me, it's annoying to deal with 100 lvl 1 weaklings. I'm as human is inefficient and slow in doing so. This campaign will be far more convenient most of time. It's usually enough to have 10-20 strong units + some heroes to win scenario. <br />
<br />
Though it's noteworthy to mention that advanced items system and AMLAs are making it hard keep it perfectly balanced in all corner cases in all possible combinations, so sometimes you can face some too simple or quite hard maps, unexpectedly. However, unless there is some bug, seasoned BfW players should not have real troubles in most places. And it will feel unique each time you play it, as you will take different paths here and there. That what makes it funny to replay, trying different paths in advancements.<br />
<br />
The most daunting issue to my taste is that BfW core neither really supports items system on it's own, nor it provides any decent UI to deal with items. I think BfW authors should consider adding support for items and items management to the BfW core to make mapmakers life easier. It's not only campaign where this problem exists, there are dozen and half of campaigns sharing same issue. But as this campaign makes extensive use of items, it's where problem is getting really obvious. AI is really dumb and clueless at handling items/extended features, etc. And sometimes in-game computations could take a while, so powerful CPU could be a good idea. I can also admit that authors of various campaigns have minor mismatches in explaining the very same events from BfW world. Ideally, they mismatches have to be corrected but it requires cooperation of large number of independent people and I can understand it's somewhat troublesome to achieve. And of course there are some things to iron out as it's still work in progress. This probably applies to complaints that AI takes a long time to complete turns, etc - on some maps it's really good idea to go to preferences and set "skip AI moves" option on.<br />
<br />
'''Surroundings''': 8<br />
<br />
'''Design''': 8<br />
<br />
'''Story''': 9<br />
<br />
'''Fun''': 10<br />
<br />
'''Replay value''': 9<br />
<br />
'''Player note''': 10<br />
<br />
<br />
=== Panther Lord ===<br />
==== Review by taptap ====<br />
Panther Lord is one of my favourite campaigns and on higher difficulties one of the most challenging. Unlike many campaigns with an anticlimactic end (Northern Rebirth, Heir to the Throne etc.) it is unrelenting from start until the end (I suffered more than 140 casualties during its 14 scenarios). Velensk is a good player and it shows. <br />
<br />
This is the showcase campaign for the Era of Four Moons, while Salt Wars is a short and much easier introduction. The Era itself is well balanced, with many novel ideas and no elves. Admittedly, at first I shuddered at the idea of playing "half-naked wild with dark-coloured sprites" - I was quite troubled that it might be a collection of racist stereotypes, but playing with it, it certainly didn't feel so. (Much better indeed than the typical association of orcs in Tolkien-esque fantasy with mongols / turks.) There aren't only tribal Darklanders and Highlanders, but Sea States and Imperialists as well. Each of them plays very differently, none of them is depicted as timeless or "always chaotic evil", even the Imperialists, the enemies in the campaign, get the opportunity to declare themselves. It certainly benefits from the background world (IALFA developed by the maintainer of the campaign) even if you only see a glimpse of it. <br />
<br />
The hero of the campaign is a mercenary outcast of his own Darklander civilization. When learning about plans to raze and colonize the jungles of his people by the imperialists he starts the quest to rescue his people. His friend the Panther spirit, to whom the campaign owes its name, always at his side, he is rallying troops and mercenaries around him, but soon he has to realize that change is inevitable. Changing their ways they may have hope to withstand or else they will be changed by force and subjugation. But how to convince his own people when he is an upstart at best, a traitor and spirit-friend at worst?<br />
<br />
While the campaign is centered around Darklanders, the player has the choice of hiring (and recalling) a limited amount of highly useful mercenaries of the other factions of the Era. The campaign features small scale to a few large scale battles and puts different territory to good use encouraging the use of mercenaries and different unit types. I omit the numbers, but this campaign is certainly recommended.<br />
<br />
<br />
=== Swamplings ===<br />
==== Review by Dunno ====<br />
'''Description:''' Swamplings is the name of goblin tribe living in swamps, banished by orcs. In an unfortunate turn of events, those goblins get tangled up in human affairs and must fight for their very survival. The player also learns how goblins started riding wolves.<br />
<br />
'''Summary:''' It's a decent, finished and stable campaign with interesting plot. There are many humorous scenes and some serious ones, there are standard battle scenarios and various original missions. There are also some high quality custom sprites, and maps are very good as well. It won't make your jaw drop, however, it's just a modest, enjoyable campaign.<br />
<br />
'''Surroundings:''' 7<br />
<br />
'''Design:''' 8<br />
<br />
'''Story:''' 8<br />
<br />
'''Fun:''' 9<br />
<br />
<br />
==== Review by Pyrophorus ====<br />
'''Tags:''' goblins,skirmish,story<br />
<br />
'''Description:''' see previous review.<br />
<br />
'''Summary:''' This campaign is very original and imaginative. First of all, it features not chivalrous heroes like most Wesnoth campaigns, but humble and rather stubborn people instead. More of it, the story is much more picaresque than epic, written in a delicious humorous tone, very unusual in Wesnoth world. IMO, it's one of the few really good writing one can find here. It's impossible to abstract this complex story, where everything goes in an unexpected way, to list every strange encounter, funny event and so on. If you like good writing, humor, as well as hardcore fighting, you'll really love this campaign. If not, just as Dunno says, it's honest, no more.<br />
<br />
'''Surroundings:''' 7<br />
<br />
'''Design:''' 8<br />
<br />
'''Story:''' 10<br />
<br />
'''Fun:''' 10<br />
<br />
'''Replay value:''' 7<br />
<br />
<br />
=== Talentless Mage ===<br />
==== Review by Dunno ====<br />
'''Description:''' A humorous story about a mage who managed to learn only one spell in his life and who takes command of N.O.O.B.S. (Noticeably - Optimal - Outstanding - Brilliant - Soldiers) squad. N.O.O.B.S. advance through amla with basic options like melee attack, melee damage etc. <br />
<br />
'''Summary:''' this here is Wesnoth parody at its best. The campaign mocks the common cliches in Wesnoth campaigns and overused events, like loyal units coming out of villages, random magical items scattered around the map and low quality frankensprites. Very absurd and pythonesque at times, you will keep smiling and laughing through the whole story.<br />
<br />
'''Surroundings:''' 6<br />
<br />
'''Design:''' 8<br />
<br />
'''Story:''' 9<br />
<br />
'''Fun:''' 10<br />
<br />
<br />
=== The Library of Kratemaqht ===<br />
==== Review by Wesbane ====<br />
The campaign is about genesis, course and outcome of civil war in empire of Anaktoron.<br />
Surroundings:<br />
The way campaign looks. How it feels and uses game engine is simply amazing and unseen before.<br />
Maps are nicely done although many parts of a map serve for story (decorative) purpose only what is not always good. You will travel through wealthy and populous kingdom which is torn apart by war. To create this impression in most of maps there is a lot of villages and they are placed in large groups, but map look doesn't suffer from it. More over you can feel destruction in game world as never before. Campaign features custom burning houses which are not only mere visual effect but have impact on battle course.<br />
It is one of most cinematic campaigns if not the most. Cutscenes are packed with action and take place in several locations. Also game transition fluently into cutscene and cutscene into game. What makes it even more interesting since you will never know is it just a cutscene?<br />
In terms of visual effects it also features the best epilogue ever.<br />
As it was not enough you can experience a true wesnoth dragon. It is so unusual that it need separate mention.<br />
Dragon is fully animated and have some nice custom sounds. Some of it animations are purely character play. Like roar and feasting. And last, but not least it preserves original wesnoth dragon concepts. It attacks with fangs and tail. Although it primary weapon is ranged magical fire breath which works as AoE attack when used offensively. There is one little bug with its animation, but it can't be noticed during playing it anyway.<br />
In short this campaign surely establish new standards for wesnoth in department of visuals.<br />
Design:<br />
Scenarios design is good. All levels are playable. Objectives are clearly formed, so it is known most of the time what to do. There are several minor bugs and one bigger that affects game to some degree. However they do not make impossible to play and enjoy campaign.<br />
Campaign is using default units although sometimes with unusual traits and abilities. Custom units are also present, but only as much as they are needed. Which is a great thing since it proves designer skill at using available resources. Beside that I really can't stand campaigns introducing many user made units.<br />
I liked much idea of premagic era and weakened magic users. Unfortunately any extra mages aren't useful since you have already better characters of this class. In fact after my recall list was cleaned up after Jevyans Return I never bothered to recruit them again.<br />
Gold carryover system is custom which is not a good choice for classic style adventure. Twenty percent instead of forty. Most probably this is caused by slightly overpopulated maps. Campaign is very easy, except two scenarios: Refugees and Loyalty's Cruel Reward. There is no moderately difficult scenarios. The huge difference between average level difficulty and hardest level is just to big. Most difficult scenarios are Refugees and Loyaltys Cruel Reward.<br />
Story:<br />
Amount of delivered information is enough. Writing style is good. Beginning is terrific. Switching between protagonists is cool, and quite innovative idea. Overall concept is nicely executed and creator skillfully merged a lot of facts from mainline into own story. To fully appreciate this playing The Rise of Wesnoth is recommended. However ending I found disappointing. It seemed rushed and unconvincing. Also few details don't match to reality of Irdya.<br />
Fun:<br />
Campaign is definitely entertaining. Well done battles. Good dialog. And full of fresh ideas. You can play as good and bad in a single campaign! Although I have nothing against being awesome most of the time enemies fell way to easily to my taste.<br />
Replay value:<br />
Campaign is nicely done and straight forward. Although there is nothing that would reject you from playing it again, there is nothing that would encourage you to do that either. No hidden secrets, no tactical challenges, no extra levels. No satisfying ending.<br />
<br />
Summary:<br />
Overall it is well made, really great, easy campaign suitable for beginners with story explaining some events from The Rise of Wesnoth. Bringing new standards in design, especially visual ones. It story is shown from several angles what is unique feature, but unfortunately potential of this solution wasn't used at all. If you are looking for deep plot, and tactical challenge you won't find it here.<br />
<br />
'''Surroundings: 10<br />
<br />
'''Design: 6<br />
<br />
'''Story: 7<br />
<br />
'''Fun: 7<br />
<br />
'''Replay value: 5<br />
<br />
'''Campaign score: 7<br />
<br />
'''Player note: 8<br />
<br />
'''Link to review:''' [http://forums.wesnoth.org/viewtopic.php?f=8&t=37798&start=45#p551674]<br />
<br />
<br />
=== To Lands Unknown ===<br />
==== Review by Dunno ====<br />
'''Description:''' This campaign tells about Mehir, a Summoner, who's working on a great quest of making the biggest magical circle ever made. If he and other summoners succeed, activating the circle will bring them to the Abyss, the lands unknown.<br />
<br />
'''Summary:''' The main idea behind this campaign and the Era of Magic (used by To Lands Unknown) is to take Wesnoth graphics to an entirely new level. Maps are no longer simple, repetitive hexes, instead many maps are absolutely mindblowing landscapes. In addition, all units are well made and animated. The story and gameplay, however, could have been done better. The campaign is quite long, and at times battles get boring.<br />
<br />
'''Surroundings:''' 10<br />
<br />
'''Design:''' 7<br />
<br />
'''Story:''' 5<br />
<br />
'''Fun:''' 6<br />
<br />
<br />
== Back to Guide to UMC Campaigns ==<br />
* '''[http://wiki.wesnoth.org/index.php?title=Guide_to_UMC_Campaigns Guide to UMC Campaigns]'''<br />
<br />
<br />
== Feedback Thread ==<br />
If you have criticism, ideas and suggestions then please post it in the feedback thread.<br />
<br />
Or maybe you don't want, or don't know how to edit the wiki page, then you can post your review also here. I will add it then to this page.<br />
* '''[http://forums.wesnoth.org/viewtopic.php?f=17&t=38946 Feedback Thread]'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=Guide_to_UMC_Content&diff=51433Guide to UMC Content2013-06-18T19:30:55Z<p>Lipk: Remove campaign deleted from the server</p>
<hr />
<div>''This is a guide to the current (1.10.x/1.11.x) UMC campaigns for players. It aims to provide all the information not only about the story, but also about completion, difficulty and playing style of the campaign. See also [[Guide_to_UMC_Campaigns/Players_Reviews|Players Reviews]], as well as http://forums.wesnoth.org/viewtopic.php?f=8&t=37476 for further information and http://forums.wesnoth.org/viewtopic.php?f=8&t=36733 (for currently non-available UMC-content). Please edit, it is a wiki.''<br />
<br />
=== Blueprint ===<br />
<br />
'''Status:'''<br />
* Broken = Does not work at all<br />
* Incomplete = Partially written, no progress<br />
* WIP = Partially written, progress<br />
* Complete = Completely written, but buggy as well as potential balance issues.<br />
* Finished = Completely written, minimal to no bugs, slight balance issues possible. <br />
<br />
'''Length:'''<br />
<br />
'''Author:'''<br />
<br />
'''Maintainer:''' if not maintained by the author anymore.<br />
<br />
'''Description:'''<br />
<br />
'''Version: '''<br />
<br />
'''Requirements:'''<br />
<br />
'''Difficulty:'''<br />
<br />
Please note: Often campaigns introducing new mechanics are listed as expert level on the add-on server, here difficulty means the raw difficulty after the mechanics are understood.<br />
<br />
* Unbalanced = If you can't beat the hard mode, it isn't necessarily unbalanced, but if the difficulty changes erraticly from one scenario to the next and only people using the debug mode have seen the final, then it is.<br />
* Easy<br />
* Normal<br />
* Hard<br />
<br />
'''Style:''' <br />
<br />
Please note: Many campaigns will feature more than one style. Please list the most significant ones.<br />
<br />
* Skirmish = small to medium sized armies, your standard Wesnoth gameplay<br />
* Dungeon = long and narrow tunnels (not every underground scenario is a dungeon, a dungeon isn't necessarily underground)<br />
* RPG = role playing game elements such as talking with non-player-characters, item collection, dependency on a party of very few adventurers without or limited recruits<br />
* Survival = being exposed to changing, spawning enemies while remaining on the same map<br />
* Large Battle = large number of units on the battlefield, sizely maps<br />
* Simulation = campaigns feat. terrain modification, alternative resources<br />
* Boss battle = the challenge is to defeat a single powerful enemy unit<br />
* Minigames = there are puzzles and minigames in the campaign that significantly differ from standard Wesnoth gameplay<br />
<br />
'''Faction/Era:'''<br />
<br />
* Era for the whole campaign and more specifically the faction or unit composition you field.<br />
<br />
'''Custom units:'''<br />
<br />
* Link to the unit tree for cases that don't feel sufficiently described by Faction / Era entry.<br />
<br />
'''Forum:'''<br />
<br />
* Links to the feedback and development threads at forums.wesnoth.org<br />
<br />
<br />
<br />
<br />
<br />
== Battle for Wesnoth 1.10.x - stable ==<br />
<br />
''Campaigns available in the 1.10.x stable version.''<br />
<br />
<br />
<br />
<br />
=== After the Storm ===<br />
<br />
''Follow the journey of Galas and his band following the events of <i>Invasion from the Unknown</i>''<br />
<br />
'''Author:''' shadowmaster/ShikadiLord<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 3 episodes of 13 scenarios each, some of which are multi-part<br />
<br />
'''Difficulty:''' Medium-hard<br />
<br />
'''Style:''' Skirmish, Boss Battle, Dungeon<br />
<br />
'''Faction/Era:''' Many custom units<br />
<br />
'''Version:''' 0.9.2<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=32091<br />
<br />
'''Note:''' (vultraz) Long, very enjoyable campaign with great story.<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#After_the_Storm Players´ Review]'''<br />
<br />
=== Aldur The Great ===<br />
<br />
''This is a story about Aldur the Great.''<br />
<br />
'''Author:''' pintercsabi<br />
<br />
'''Status:''' Complete, but unbalanced<br />
<br />
'''Length:''' 5 playable scenarios<br />
<br />
'''Difficulty:''' Unbalanced<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default<br />
<br />
'''Version:''' 1.2.2<br />
<br />
'''Forum:''' -<br />
<br />
'''Note:''' (Adamant14) Short unbalanced campaign, maybe abandoned. You fight with Peasants, Ruffians and Woodsman against Orcs<br />
<br />
<br />
=== Alfhelm the Wise ===<br />
<br />
''This is the tale of Alfhelm, called by some the Wise, son of Alfric Conqueror. This is the tale of his victories over his enemies, and his rise to power in the clans of Marauderdom. This is the tale of his journey south and his destruction of the Lavinian Empire. And this is the tale of his demise in the dark forests far to the east of his homeland.''<br />
<br />
'''Author:''' turin<br />
<br />
'''Maintainer:''' UnwiseOwl<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 15 gameplay scenarios <br />
<br />
'''Difficulty:''' Moderate<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Imperial Era, Marauders.<br />
<br />
'''Version:''' 0.6.0<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=17144<br />
<br />
'''Note:''' (Maintainer) Though this campaign is complete and playable the whole way through, the code is four years old and pretty buggy. If you notice any errors while playing, please let me know and I'll incorporate the fixes into my next revision as soon as possible.]<br />
<br />
<br />
=== A New Order ===<br />
<br />
'''Author:''' szopen<br />
<br />
'''Status:''' Finished. <br />
<br />
'''Length:''' 45 scenarios.<br />
<br />
'''Description:''' The old kingdom of Wesnoth has fallen before barbarian hordes. The occupying barbarians are on the brink of civil war, the seeds of Wesnothian rebellion are kept alive by old legends, while bandits and Khalifate mercenaries roam the land. Can Gawen Hagarthen unite these disparate factions against a common foe?<br />
Note: This campaign contains mature themes, some of which may be unsuitable for children.<br />
<br />
'''Version: ''' 1.2.15<br />
<br />
'''Requirements:''' Requires BfW 1.10. In addition, you have to install Era Khalifate add-on; the Akladian Music package is optional<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle<br />
<br />
'''Faction/Era:''' Akladians, Khalifate<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=6486<br />
<br />
'''Note:''' (Pyrophorus) Certainly one of the most mature and well designed campaign in add-ons. A must.<br />
<br />
''' [http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#A_New_Order Players´ Review]'''<br />
<br />
<br />
=== Antar, Son of Rheor ===<br />
<br />
''This is the story about a young Lord and his first mission; sent by his father the young Lord Antar has to relieve his neighbours; he has to convince the Elves and Dwarves to ally him; he has to fight against hordes of Orcs and Endless Undead; and finally he has to defeat Mal Kazur, the mastermind who is behind all the evil.''<br />
<br />
'''Author:''' Adamant14<br />
<br />
'''Status:''' WIP<br />
<br />
'''Length:''' 9 playable scenarios / 1 cutscene<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Loyalists and Elves (feat. fencer as main hero + various allies)<br />
<br />
'''Version:''' 0.9.9<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36075<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Antar.2C_Son_of_Rheor Players´ Review]'''<br />
<br />
<br />
=== A Story of the Northlands ===<br />
<br />
''A story of life and death in a remote village of the Northlands. Your village has been overrun by an orcish raid. You fight for its freedom while you wait for help to arrive.''<br />
<br />
'''Author:''' zepko<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 10 playable scenarios + 1 dialogue-only<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default + additions: you play with a custom faction of outlaws and with a custom party of loyalist knights.<br />
<br />
'''[http://units.wesnoth.org/1.10/A_Story_of_the_Northlands/en_US/A_Story_of_the_Northlands.html Custom Units]'''<br />
<br />
'''Version:''' 1.0.0<br />
<br />
<br />
=== A Vision Blinded ===<br />
<br />
''Defend the northern forest against what appeared like a routine orcish raid, and unravel the greater conspiracies that lie below its waves.''<br />
<br />
'''Author:''' LemonTea<br />
<br />
'''Maintainer:''' AxalaraFlame<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 13 playable scenarios + 1 dialogue-only<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Elves (+ Trolls, Outlaws)<br />
<br />
'''[http://units.wesnoth.org/1.10/A_Vision_Blinded/en_US/A_Vision_Blinded.html Custom units]'''<br />
<br />
'''Version:''' 0.6.9<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=23463&hilit=a+vision+blinded<br />
<br />
<br />
=== Bad Moon Rising ===<br />
<br />
''An expedition to gather treasure from the cold north sets off compounding disaster.''<br />
<br />
'''Author:''' Doofus-01<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 20 scenarios<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Archaic Era<br />
<br />
'''Version:''' 1.4.4.a<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=31348<br />
<br />
<br />
=== Battle Against Time ===<br />
<br />
''Rescue fellow orcish warchief before he is executed. (This is not a normal campaign. It is experiment with carryover system. You will start with defined number of turns and gold. You will only have that many turns to play through the whole campaign. There is no finish bonus and gold carryover is always 100%.)''<br />
<br />
'''Author:''' Wonderboy<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 4 playable scenarios + 1 prologue scenario<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default: Orcs<br />
<br />
'''Version:''' 1.0.0<br />
<br />
'''Forum:''' http://wesnoth.org/forum/viewtopic.php?f=8&t=27319<br />
<br />
<br />
=== Besieged Druids ===<br />
<br />
''A elvish school for druids comes under attack by goblins. It seems more than just a routine raid; is there something more sinister behind this attack? - In Beseiged Druids, you control Eärendil, the surviving teacher at the school, and the many and varied initiates. Not all of these are ordinary students; many have been experimenting with other forms of magic, while others are simply overachievers in some area of study. Unfortunately, they are not especially good at combat, at least initially. Together with a very small contingent of surviving guards, it is up to these students to save the island of Aleron from disaster.''<br />
<br />
'''Author:''' Celtic Minstrel<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 9 scenarios<br />
<br />
'''Difficulty:''' Unbalanced<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Elves<br />
<br />
'''[http://units.wesnoth.org/1.10/DruidSiege/en_US/celmin-druid-siege.html Custom units]'''<br />
<br />
'''Version:''' 1<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37342<br />
<br />
<br />
=== Birth of a Lich ===<br />
<br />
''This is the life story of the dreaded lich Malifor, his struggle as a mage outcast, the orcish conquest of the northlands and his transformation to quench the thirst for revenge''<br />
<br />
'''Author:''' chak_abhi<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 12 playable scenarios / 2 dialogue only<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle, Dungeon<br />
<br />
'''Faction/Era:''' Human outlaws, dwarves, undead<br />
<br />
'''[http://units.wesnoth.org/1.10/Birth_of_a_Lich/en_US/Birth_of_a_Lich.html Custom Units]<br />
<br />
'''Version:''' 1.0.3<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37057<br />
<br />
<br />
=== Bitter Revenge===<br />
<br />
''Amidst the strife and turmoil of the first Dark Age of Wesnoth, a time of transient monarchies and conspiracies against the Crown, the boy Darith witnesses the murder of his father by a general of Wesnoth. Follow Darith's quest for retribution in this treacherous tale of betrayal, deceit, love, remorse, and vengeance.''<br />
<br />
'''Author:''' Wonderboy<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 11 playable scenarios + 4 dialogue only<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default (mostly outlaws and undead, custom units)<br />
<br />
'''Version:''' 1.1.0<br />
<br />
'''Forum:''' http://wesnoth.org/forum/viewtopic.php?f=8&t=26699<br />
<br />
<br />
=== Cavanagh The Conqueror ===<br />
<br />
''This is the tale of Cavanagh Orc-Foundling, who was blessed by the gods to conquer and unite all of the Great Continent. Orcs and elves, gods and men, queens and sorcerers populate this epic tale of revenge and redemption.''<br />
<br />
'''Author:''' TheEmptyLord (Programming, Map-making, Editing), Scott_Free(Story)<br />
<br />
'''Status:''' WIP<br />
<br />
'''Length:''' 10 Playable Scenarios so far<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, limited RPG, limited Large Battle<br />
<br />
'''Faction/Era:''' Default (Units from Northerners, Outlaws, Loyalists as well as other factions interspersed. Several custom units.)<br />
<br />
'''Version:''' 0.1.2<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=35927<br />
<br />
<br />
=== Cities of the Frontier ===<br />
<br />
''Settle a new town in the wilds north of the Great River.''<br />
<br />
''This campaign makes several changes to the standard Wesnoth game mechanics, and focuses on city-building and gold management.''<br />
<br />
'''Author:''' esci<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' Not fixed, approximately 6-10 seasons of 36 turns each<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Simulation, Survival<br />
<br />
'''Faction/Era:''' Default, Loyalist<br />
<br />
'''[http://units.wesnoth.org/1.10/Cities_of_the_Frontier/en_US/Cities_of_the_Frontier.html Custom units]'''<br />
<br />
'''Version:''' 0.5.1<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36004<br />
<br />
<br />
=== Considerate Dead ===<br />
<br />
''As the wind goes on and on, people discover necromancer aren't always bad. Made by tribes45 - No scenarios are done, 4 playable out of ??.''<br />
<br />
'''Author:''' tribes45 aka tribes55<br />
<br />
'''Status:''' Incomplete, unbalanced, abandoned<br />
<br />
'''Length:''' 5 scenarios<br />
<br />
'''Difficulty:''' Unbalanced<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default<br />
<br />
'''Version:''' .009<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36522<br />
<br />
<br />
=== Count Kromire ===<br />
<br />
''You are the blood son of a vampire lord, however when the might of the celestial crusades comes knocking, and your father is slain, you flee your lands. However you intend to return, to restore the lands of Kromire to the Kromires, to avenge your father, and most importantly, to make sure that no celestial ever dares come into your mountains again.''<br />
<br />
'''Author:''' Velensk<br />
<br />
'''Maintainer:''' currently none<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 9 scenarios<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Era of Myths, Vampires<br />
<br />
'''Version:''' 1.3.2<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=21560<br />
<br />
<br />
=== Elvish Dynasty RPG ===<br />
<br />
''You are the new ruler of an elvish kingdom! Can you lead your people to glory? This campaign is highly randomized so it will be different every time you play!''<br />
<br />
''Sequel to Ooze Mini-Campaign''<br />
<br />
'''Author:''' spencelack<br />
<br />
'''Maintainer:''' Wesbane<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 10 years, in each year choice between dialogue and fighting scenario (selected out of a large pool of possible scenarios)<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' RPG, Skirmish<br />
<br />
'''Faction/Era:''' Default, Elves<br />
<br />
'''Version:''' 0.9.9b<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=28627<br />
<br />
<br />
=== Fall of Silvium ===<br />
<br />
''You are Caius Regilius, Tribune of the province of Silvia, located in the northmost reaches of the Lavinian Empire at the height of its power. But the Empire has overextended itself, The city of Silvium lies seperated from the rest of the Empire by the mountains of Arendia, and is sandwiched between the Marauders and the Sidhe... war is inevitable, and the province of Silvia will almost certainly fall.''<br />
<br />
'''Author:''' turin<br />
<br />
'''Maintainer:''' UnwiseOwl<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 8 scenarios<br />
<br />
'''Difficulty:''' Medium<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Imperial Era, Lavinian Legion.<br />
<br />
'''Version:''' 0.6<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=31&t=24356<br />
<br />
'''Note:''' The final level of this campaign is not supposed to be winnable. It's a final blaze of glory and chance to use all your high-powered units, but to 'win' the campaign, you must lose...the ending is similar to a certain mainline campaign, but predates it.<br />
<br />
<br />
=== Fate of a Princess ===<br />
<br />
''Part I: Baldres, a notorious robber baron, flees Wesnoth with his followers and sets off into the northlands to evade the king's justice. The baron's deeds and misdeeds are to change the balance of power between orcs and non-orcs throughout the northlands, and will carry consequences long after his eventual death.''<br />
<br />
''Part II: The Greenwood elves face a crisis which demands the return of the queen's estranged half-elven half-sister, Baldres' daughter. Two brave young elves must make a perilous journey to find her and bring her back to her former home. If they fail, the whole northlands will be engulfed in war with the resurgent orcs...''<br />
<br />
'''Author:''' SkyOne, mich, simonsmith<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 26-29 scenarios (some dialogue-only), 2 parts<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Dungeon<br />
<br />
'''Faction/Era:''' Default with additions. You play two different, unique cross-faction combinations in each part.<br />
<br />
'''[http://units.wesnoth.org/1.10/Fate_of_a_Princess/en_US/Fate_of_a_Princess.html Custom units]'''<br />
<br />
'''Version:''' 0.9.17<br />
<br />
'''Required Wesnoth version:''' 1.9.12 or later<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=26327<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Fate_of_a_princess Players´ Review]'''<br />
<br />
<br />
=== Forgotten Kingdom ===<br />
<br />
''Help Orlog, a troll chieftan, lead his people to safety in the underground and discover an ancient power long forgotten.''<br />
<br />
'''Author:''' Limabean<br />
<br />
'''Maintainer:''' Chrysophylax<br />
<br />
'''Status:''' Incomplete ( but all scenarios playable and balanced )<br />
<br />
'''Length:''' 9 playable scenarios + 1 dialogue-only<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Goblins, Trolls<br />
<br />
'''[http://units.wesnoth.org/1.10/Forgotten_Kingdom/en_US/Forgotten_Kingdom.html Custom units]'''<br />
<br />
'''Version:''' 0.1.7<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=23483<br />
<br />
'''Note:''' (Adamant14) This campaign includes a custom Troll line. A good campaign, I hope Limabean and/or Chrysophylax will finish it.<br />
<br />
<br />
=== Forward they Cried ===<br />
<br />
''You are the leader of an advanced detachment that has been tasked with capturing a bridgehead while the main army prepares to attack. It should be a simple enough assignment.''<br />
<br />
'''Author:''' Glowing Fish<br />
<br />
'''Maintainer:''' Lord-Knightmare <br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 1 scenario ( rather a single scenario than a campaign )<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default Loyalists<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=23656&p=350126&hilit=forward+they+cried#p350126<br />
<br />
'''Version:''' 1.0.0<br />
<br />
'''Note:''' (Adamant14) Only a single scenario, but a great scenario.<br />
(UnwiseOwl) You wouldn't want to stop thinking for a turn, and it's good for the first few turns, but this one leaves me wanting more.<br />
<br />
<br />
=== Galuldur's First Journey ===<br />
<br />
''While the belligerence of orcs is nothing new, their intensifying attacks on a fledgling colony of elves in Pindir Forest begin to show signs of a deeper malice, forcing Galuldur, the young son of the colony's adventurous founder Galur, to venture out of his forest's friendly trees in search of help. His simple errand quickly turns into a frantic quest to unearth the roots of the mysterious evil threatening his people. As you lead him through unknown lands, Galuldur, forced to match wits with unexpected adversaries at nearly every turn in a desperate attempt to save his world, quickly learns that the world is neither a friendly nor a simple place.''<br />
<br />
'''Author:''' mattsc<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 8-9 scenarios<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Elves<br />
<br />
'''[http://units.wesnoth.org/1.10/Galuldur/en_US/Galuldur.html Custom units]'''<br />
<br />
'''Version:''' 1.1.1<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=31895<br />
<br />
<br />
=== Grnk the Mighty ===<br />
<br />
''All his life, puny little goblin Grnk the Frail had been dreaming about leaving the orcs and starting a better life. When he finally arrives in the human town of Shmaltupp, he realizes that the world is not as black and white as he had imagined. He also discovers that he is no ordinary goblin. Follow Grnk the Frail on his path to becoming Grnk the Mighty.''<br />
<br />
'''Author:''' mattsc<br />
<br />
'''Status:''' Part I complete<br />
<br />
'''Length:''' 13 scenarios<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish, RPG<br />
<br />
'''Faction/Era:''' Default, changing (no standard army building gameplay)<br />
<br />
'''[http://units.wesnoth.org/1.10/Grnk/en_US/Grnk.html Custom units]'''<br />
<br />
'''Version:''' 1.0.5<br />
<br />
'''Required Wesnoth version:''' 1.9.5 or later<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=34970<br />
<br />
<br />
=== Invasion from the Unknown ===<br />
<br />
''Episode I - Seeking the Light: Long after the Fall, the last forest elves are forced to abandon their safe valley, and find themselves resorting to the dark means of necromancy in order to survive the perils and challenges of this new harsh world. May they finally free the Great Continent from its chaos, or perish in the foolish attempt of restoring peace and life to the lands.''<br />
<br />
''Episode II - Armageddon: As the shadow of Chaos covers the entire continent, an assorted group of foolish heroes prepares a counter-attack to the Empire, with one unique goal in their minds: defeat the evil Emperor, whoever it is. Lead these courageous living and non-living warriors to victory, and rediscover lost secrets of the history.''<br />
<br />
'''Author:''' shadowmaster <br />
<br />
'''Maintainer:''' Espreon<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 26 scenarios in two episodes<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Dungeon, Boss battle<br />
<br />
'''Faction/Era:''' Unique. You play Elves and Undead throughout the campaign + in the 2nd part Northerners and Aragwaithi.<br />
<br />
'''Version:''' 1.90.6<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Invasion_from_the_Unknown Players´ Review]'''<br />
<br />
'''Note:''' (taptap) Despite its acknowledged flaws (generic hero, plot holes, deus ex machina moments, gameplay issues in the 2nd part) this is undoubtedly the most iconic campaign in UMC. It single-handedly redefines the elvish history and sketches a cosmology for the ages after the fall. With the Chaos empire and its various allies it introduces an era worth of factions to single-player play. At the same time it features some of the most beautiful maps in Wesnoth and stunning art on par with mainline campaigns.<br />
<br />
<br />
=== Invasion of Eliador ===<br />
<br />
''A peaceful island is about to be invaded by unknadd-ons foes travelling towards the eastern shore. It is up to a family of outlaws to warn the island's inhabitants before it's too late.''<br />
<br />
'''Author:''' Sam M. (Genosuke)<br />
<br />
'''Maintainer:''' trewe<br />
<br />
'''Version:''' 1.0.4<br />
<br />
'''Style:''' RPG, Skirmish, Puzzle<br />
<br />
'''Length:''' 10 scenarios + epilogue<br />
<br />
'''Difficulty:''' Easy<br />
<br />
'''Status:''' Complete<br />
<br />
'''Faction:''' Default (outlaws)<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=6556<br />
<br />
'''Wiki:''' [[Invasion_of_Eliador]]<br />
<br />
<br />
=== Langrisser Sample Campaign ===<br />
<br />
''The Imperial Knights of the Rayguard Empire have disrupted the peace of the village that was Hein's hometown, seeking only a girl named Liana. Fight to rescue Liana.''<br />
<br />
'''Author:''' Morath<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 1 playable scenario<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Elves<br />
<br />
'''Version:''' 0.1.0.5<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36417&hilit=Langrisser<br />
<br />
'''Wikipedia:''' [http://en.wikipedia.org/wiki/Langrisser What is Langrisser]<br />
<br />
'''Note:''' (Adamant14) Single scenario, different from usual Wesnoth behaviour.<br />
<br />
<br />
=== Legend of Far North ===<br />
<br />
''The tale of the legendary Black Eye Karun,depicting his rise to power, his successes and his brutal assassination.'<br />
<br />
'''Author:''' chak_abhi<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 16 playable scenarios / 1 dialogue only,1 cutscene<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle<br />
<br />
'''Faction/Era:''' Orcs, Trolls, Saurians, Nagas<br />
<br />
'''[http://units.wesnoth.org/1.10/Legend_of_Far_North/en_US/Legend_of_Far_North.html Custom Units]'''<br />
<br />
'''Version:''' 1.0.2<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=34769<br />
<br />
<br />
=== Legend of the Invincibles ===<br />
<br />
'''''Part I: Shrouded in Darkness''' (5 chapters, 90 scenarios) - A pair of heroes, after stopping an orcish thread, are outcast into caves, where they have no other choice than to become liches in order to survive. They preserved their original appearance and moral principles, and fight in various skirmishes against evil (although using evil methods sometimes), until the Fall, when they are buried alive under the ashes of the third sun.''<br />
<br />
'''''Part II: Into the Light''' (4 chapters, 96 scenarios at the moment) - Long after the Fall, the lich heroes awaken. Searching for more power, they manage to resurrect themselves as living beings, but this time more powerful and ridden of the evil within. But the evil from inside them did not cease to exist, and started a campaign to conquer the world. Stopping the campaign caused an even worse disaster...''<br />
<br />
'''Author:''' Dugi <br />
<br />
'''Status:''' WiP (but Part I might be considered complete)<br />
<br />
'''Length:''' 185 (+7 talk-only) scenarios at the moment<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' mostly Skirmish and Dungeon (all other styles are present as well, but less frequently)<br />
<br />
'''Faction/Era:''' Elves, Loyalists, Undead, Dwarves; but they advance past their usual maximum level<br />
<br />
'''Version:''' 2.5.0<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Legends_of_the_Invincibles Players´ Review]'''<br />
<br />
'''Note:''' The most unique feature of this campaign is its RPG-like unit development system, enemies drop items units can use, leaders are stronger than most usual units and all units get AMLA (after maximum level advancement) after reaching their maximum level (that is also increased by a load of additional level 4 units).<br />
<br />
<br />
=== Panther Lord ===<br />
<br />
''The Imperialists ambitions of pushing into the Sea States have been repeatedly thwarted and now they turn their attentions elsewhere. You are an outcast Darklander now living as a mercenary in the Sea States and the rumors you hear indicate that they will be coming to your people. Though an outcast you do not wish to see them subjugated. The spirit whose friendship caused you to be an outcast has a plan that might allow you to save them.''<br />
<br />
'''Author:''' Velensk <br />
<br />
'''Maintainer:''' Lavender<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 14 scenarios<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Era of Four Moons, Darklanders (+ a wide variety of mercenaries)<br />
<br />
'''Version:''' 1.0.2<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=34318<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Panther_Lord Players´ Review]'''<br />
<br />
<br />
=== Random Campaign ===<br />
<br />
''Gain experience playing the Default Era faction of your choice in a campaign setting''<br />
<br />
'''Author:''' SigurdFireDragon<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 7 playable scenarios<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Age of Heroes, & Era of Legends<br />
<br />
'''Version:''' 1.0.0<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=32922<br />
<br />
'''Note:''' (Author) A 4 scenario version is under the multiplayer button, which lets you choose any era.<br />
Intended for players to gain practice with a faction and learn sound strategies using faction specific adjustments against random factions from the chosen era.<br />
<br />
<br />
=== Rebellion in the North ===<br />
<br />
''A great orcish uprising tends to destabilise the Northlands. As the future Lord Protector of the Northern Alliance you have to crush the rebellion and establish peace again."<br />
<br />
'''Author:''' chak_abhi<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 24 playable scenarios / 3 dialogue only,2 cutscenes<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle<br />
<br />
'''Faction/Era:''' Loyalists, Dwarves, Gryphons, Merfolk<br />
<br />
'''Version:''' 1.1.12<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=33059<br />
<br />
<br />
=== Return of the Monster ===<br />
<br />
''It was time for Amailoss, born from the naga queen's last egg, to leave home. Time for him to grow into a leader in his own right, and eventually become the guardian and leader of another naga city. But along the way, he became friends with an unusual mud-crawler, they met a strange young monster, discovered that a spirit had escaped from an orc prison, and the mystery of that spirit became a grave challenge for Amailoss and the many races in the region....''<br />
<br />
''A naga campaign, involving elves, orcs, saurians, turtle-like races, and some monsters.''<br />
<br />
'''Author:''' SkyOne<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 16 playable, 2 dialog scenarios<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Dungeon<br />
<br />
'''Faction/Era:''' Default with additions. You play a custom naga faction and carapaces (a turtle-like race).<br />
<br />
'''[http://units.wesnoth.org/1.10/Return_of_the_Monster/en_US/Return_of_the_Monster.html Custom units]'''<br />
<br />
'''Version:''' 0.7.1<br />
<br />
'''Required Wesnoth version:''' 1.10.x<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36438<br />
<br />
<br />
=== Return to Noelren ===<br />
<br />
'''Status:''' Complete.<br />
<br />
'''Length:''' 26 scenarios + 7 cut scenes<br />
<br />
'''Author:''' Pyrophorus<br />
<br />
'''Description:''' ''A story in the first Dark Age of Wesnoth. See how various heroes stick together to shun the threat of black magics, restore the secret kingdom of Noelren and install Garard I on the throne of Wesnoth. This campaign features complex scenarios, unusual objectives and units, emphasizing more on story and adventures than hardcore fighting.''<br />
<br />
'''Version: ''' 0.7.6<br />
<br />
'''Requirements:''' BfW 1.10 (not tested on 1.11)<br />
<br />
'''Difficulty:''' Easy, unbalanced<br />
<br />
'''Style:''' Skirmish, RPG, Large Battle, Simulation<br />
<br />
'''Faction/Era:''' Default + custom units<br />
<br />
'''[http://units.wesnoth.org/1.10/ReturnToNoelren/en_US/ReturnToNoelren.html Custom Units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=34685#p501026<br />
<br />
'''Note:''' (Adamant14) I never saw so much fantastic and new ideas in one single UMC, wow!<br />
<br />
<br />
=== Return to Ruins ===<br />
<br />
''The humble farmers of Vertegris are summoned by Erik the General of Weldyn to put an end to an orcish raiding party. If they knew what would befall their former home... They never would have left. This is a relatively short campaign with 8 scenarios, It is still undergoing changes.''<br />
<br />
'''Author:''' Jeff Stevens (Ulfsark)<br />
<br />
'''Composer:''' Paul Fredericks (paulfredericksmusic.com)<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 7 scenarios + 1 dialogue-only<br />
<br />
'''Difficulty:''' Easy,Normal,Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default,(Loyalists, Outlaws)<br />
<br />
'''Version:''' 0.5.1<br />
<br />
'''Required Wesnoth version:''' 1.10.x <br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37790&sid=9059f18497cda1219f42a626544d0ffd&p=540646#p540646<br />
<br />
'''Note:''' (Adamant14) You play a short campaign with just a few units. Playable in a few hours, nevertheless it is fun to play.<br />
<br />
<br />
=== Salt Wars ===<br />
<br />
''Introductory campaign for the Era of Four Moons.''<br />
<br />
''As an officer of one of the Sea States you must defend your organization from aggressive rivals.''<br />
<br />
'''Author:''' Velensk <br />
<br />
'''Maintainer:''' Lavender<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 5 scenarios<br />
<br />
'''Difficulty:''' Easy<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Era of Four Moons, Sea States<br />
<br />
'''Version:''' 0.2.1<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=31498<br />
<br />
<br />
=== Saving Elensefar ===<br />
<br />
''Meneldur, elvish mariner of Elensefar, is driven to sea by the same orcs who attacked the city. He must gather an army willing to fight for him to regain Elensefar, his adopted homeland.''<br />
<br />
'''Author:''' Turin<br />
<br />
'''Maintainer:''' trewe<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 1 year (around 12 scenarios)<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, RPG, Simulation<br />
<br />
'''Version:''' 1.5.2<br />
<br />
'''Faction:''' Default Era<br />
<br />
'''Forum:''' http://wesnoth.org/forum/viewtopic.php?t=3072&start=0<br />
<br />
'''Wiki:''' [[SeafaringCampaign]]<br />
<br />
'''Note:''' Labeled as Expert, recruit list changes in all scenarios.<br />
<br />
<br />
=== Shameless Crossover Excuse ===<br />
<br />
''Fugitive dark sorcerer Gwiti Ha'atel discovers he has the power to mess with Wesnoth's continuity. His quest for revenge on the NPCs who have used his portraits will lead him through perils untold and in-jokes unnumbered, but shall pale before the horror he finds at his quest's end.''<br />
<br />
'''Author:''' Orcish Shyde, Mountain_King<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 9 scenarios<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Version:''' 1.1.0<br />
<br />
'''Faction:''' Undead<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=32016&start=15<br />
<br />
<br />
=== Swamplings ===<br />
<br />
''Banished by Yushnak the Ponderer, a tribe of lowly swamp goblins endure in the deadly mire of Pogo Bog. Four centuries before the founding of Wesnoth, this is the story of the goblins' struggle against the intrigues and betrayals of the greater races, and the rise of the first wolf rider.''<br />
<br />
'''Author:''' John Rawlins (boru)<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 14 scenarios<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Version:''' 1.1.7n<br />
<br />
'''Faction:''' Goblins<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=29784<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Swamplings Players´ Review]'''<br />
<br />
<br />
=== Talentless Mage===<br />
<br />
''Humorous and silly campaign about mage apprentice who has managed to learn only one simple spell in thirty years.''<br />
<br />
'''Author:''' Wonderboy<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 11 playable scenarios + 3 dialogue scenarios<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Noob Faction<br />
<br />
'''Version:''' 1.1.0<br />
<br />
'''Forum:''' http://wesnoth.org/forum/viewtopic.php?f=8&t=27608]<br />
<br />
'''[http://wiki.wesnoth.org/index.php?title=Guide_to_UMC_Campaigns/Players_Reviews&action=submit#Talentless_Mage Players´ Review]'''<br />
<br />
<br />
=== The Dark Alliance===<br />
<br />
''Prince Terhar lived two years with elves. Little did he expect what would happen when he returned back to Weldyn.''<br />
<br />
'''Author:''' Wonderboy<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 11 or 10 playable scenarios depending on the branch you take (+ 5 dialogue scenarios)<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default: Recruit list changes in almost every scenario<br />
<br />
'''Version:''' 1.0.3"<br />
<br />
'''Forum:''' http://wesnoth.org/forum/viewtopic.php?f=8&t=26924<br />
<br />
<br />
=== The Dark Hordes ===<br />
<br />
'''Status:''' Incomplete/WIP<br />
<br />
'''Length:''' 11/?<br />
<br />
'''Author:''' Circon<br />
<br />
'''Maintainer:''' Various<br />
<br />
'''Description:''' Lead fugitive dark sorcerer Gwiti Ha’atel to mastery of the undead hordes.<br />
<br />
'''Version: '''<br />
<br />
'''Requirements:'''<br />
<br />
'''Difficulty:'''<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default undead<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Dark_Hordes/en_US/The_Dark_Hordes_1.html Custom Units]'''<br />
<br />
'''Walkthrough:''' [[TheDarkHordes]]<br />
<br />
'''Forum:''' [[http://forums.wesnoth.org/viewtopic.php?f=8&t=16576&]]<br />
<br />
<br />
=== The Devil's Flute ===<br />
<br />
'''Status:''' Complete, unmaintained<br />
<br />
'''Length:''' 10 scenarios<br />
<br />
'''Author:''' lipk<br />
<br />
'''Description:''' Creona, the well-known assassin, gets a strange job from a strange person. So, in fact, it's no surprise that things take a strange turn...<br />
<br />
'''Version:''' 0.1.4c<br />
<br />
'''Difficulty:''' Unbalanced<br />
<br />
'''Style:''' Skirmish, Minigames<br />
<br />
'''Faction/Era:''' Outlaws<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36044<br />
<br />
<br />
=== The Earth's Gut ===<br />
<br />
''The year is 515YW. You are the young dwarven leader Hamel. Your tribe in the caves of Knalga is under pressure from its enemies, and resources are growing scarce. In order to forge the weapons required to resist your enemies, you must set forth and collect what ores and minerals remain.''<br />
<br />
'''Author:''' Anonymissimus<br />
<br />
'''Maintainer:''' Anonymissimus<br />
<br />
'''Status:''' WIP, story is unfinished (I didn't add any scenario since long, but that doesn't mean nothing is added to the campaign. My addons tend to be in good shape and bug-free which means also WIP as I'm updating it since 1.4 days.)<br />
<br />
'''Length:''' 23 scenarios, 5 of which are cutscene only, some others have changing objectives<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Dungeon, Skirmish<br />
<br />
'''Faction/Era:''' Default, dwarves, woses, mages, a few custom units<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Earths_Gut/en_US/the_earths_gut.html Custom units]'''<br />
<br />
'''Version:''' 0.2.14<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=26800<br />
<br />
'''Note:''' This campaign is a "Dwarvish dungeon crawler" (It currently contains about as many surface scenarios as underground though.) and is intended to be challenging for experienced players on hard whilst suitably easy on easy. I develop the campaign with the wesnoth development version and I advise to play with that, but it is intended to work almost equally well with the stable wesnoth version (except for features only available in the wesnoth development version).<br />
<br />
<br />
=== The Epic of Vaniyera ===<br />
<br />
''The expansionist Lavinian Legion, led by the Imperator himself, has invaded the northern forests of the Sidhe, or Wild Elves. It is up to Leithan the Thunderblade and his advisor Vaniyera to push its armies back where they came from...''<br />
<br />
'''Author:''' oreb, turin<br />
<br />
'''Maintainer:''' UnwiseOwl<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 6 scenarios<br />
<br />
'''Difficulty:''' Hard (Don't be fooled by "novice level" in the campaign description, this one is very hard.) <br />
<br />
'''Note:''' (Maintainer) Working on this issue, the next release (due at the end of November, hah!) should bring easy difficulty back to the level of a reasonable introduction to the IE, while the hard difficulty will also become slightly easier. With any luck, this will be the last release before version 1.0 of the campaign].<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Imperial Era, Sidhe.<br />
<br />
'''Version:''' 0.9.0<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=19490<br />
<br />
<br />
=== The Fall of Wesnoth ===<br />
<br />
''As the beloved human empire of Wesnoth becomes lazy and arrogant in its peaceful state of happiness, Emperor Dantair demands the creation of another sun in a bid to destroy all evil. Or is it all for a different purpose? A man named Alitar sees it that way, and now he must survive the most evil inhabited lands if he is to stop chaos from rising, and Wesnoth from falling... This is the story of The Fall of Wesnoth.''<br />
<br />
'''Author:''' Pewskeepski<br />
<br />
'''Status:''' 1st part complete, 2nd WIP.<br />
<br />
'''Length:''' 10 playable scenarios<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Outlaws<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Fall_of_Wesnoth/en_US/The_Fall_of_Wesnoth-1.html Custom units]'''<br />
<br />
'''Version:''' 1.0.8<br />
<br />
<br />
=== The Founding of Borstep ===<br />
<br />
''The chieftain of your tribe has become decadent and weak. Take over, and lead your people to a better home--whether it is already occupied or not. The Northlands in year 9W are a barbaric place, but anyone who stands in your way will learn the power of orcs!'' <br />
<br />
'''Author:''' Beetlenaut<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 10 and 1 dialogue only<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Northerners<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Founding_of_Borstep/en_US/The_Founding_of_Borstep.html Custom units]'''<br />
<br />
'''Version:''' 1.1.1b<br />
<br />
'''Note:''' (Kanzil) I find the protagonist hard to sympathise with. Also, most scenarios contain interesting twists. For example, in one, each time you killed a boar it gives you extra health.<br />
<br />
'''Note:''' (beetlenaut--author) In most Orcish campaigns the leader is heroic or just wants peace. Krag-Ubor wants plunder and battle like all enemy Orcs in other campaigns. I '''hope''' you don't sympathize too strongly, but I don't think you need to in order to enjoy the game play.<br />
<br />
<br />
=== The Library of Kratemaqht ===<br />
<br />
''An ancient story from the old continent.''<br />
<br />
'''Author:''' Rich Marinaccio (cephalo)<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 17 scenarios<br />
<br />
'''Difficulty:''' Unbalanced (some scenarios are Easy - some rather Hard) <br />
<br />
'''Style:''' Skirmish, RPG<br />
<br />
'''Faction/Era:''' Loyalists and custom units.<br />
<br />
'''[http://units.wesnoth.org/1.10/Library_Of_Kratemaqht/en_US/The_Library_Of_Kratemaqht.html Custom units]'''<br />
<br />
'''Version:''' 1.0.0<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37798<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#The_Library_of_Kratemaqht Players´ Review]'''<br />
<br />
'''Notes:''' (Adamant14) This campaign has a thought-out story, shows a great love for detail;<br />
It includes a great custom Dragon, some brilliant custom images (fire, burning houses, burning forest) that makes the scenery / maps look very nice.<br />
<br />
<br />
=== The Roar of the Woses ===<br />
<br />
''When the construction of a dam threatens the existence of her home, Kylix is forced on a journey to stop it.''<br />
<br />
'''Author:''' Alarantalara<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 10-11 scenarios + 1 dialogue-only<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default with Additions (primarily Saurians, Nagas, Woses)<br />
<br />
'''Version:''' 1.2.7<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=29830<br />
<br />
'''Note:''' (author) Potentially unbalanced on Hard difficulty due to experiments with non-standard ways to increase difficulty. This issue does not exist on the lower difficulty levels.<br />
<br />
<br />
=== The Three Elves ===<br />
<br />
''Three elves have just begun their adventure in the northern swampland. Will they become heroes or will they be responsible for another undead expansion?''<br />
<br />
'''Author:''' Stanislav Hoferek<br />
<br />
'''Maintainer:''' trewe<br />
<br />
'''Version:''' 0.9<br />
<br />
'''Status:''' Complete<br />
<br />
'''Difficulty:''' Easy<br />
<br />
'''Length:''' 8 scenarios + 2 dialogue<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction:''' Default (Elves)<br />
<br />
'''Forum:''' (does it have one?)<br />
<br />
<br />
=== The Sojournings of Grog ===<br />
<br />
''Grog (as starred in Under the Burning Suns) goes home.''<br />
<br />
'''Author:''' Peter Christopher, Thomas Hockings <br />
<br />
'''Maintainer:''' Elvish_Hunter<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 18 playable scenarios in 2 parts<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Dungeon, Large Battle<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Sojournings_of_Grog/en_US/The_Sojournings_of_Grog.html Custom units]'''<br />
<br />
'''Faction/Era:''' Default. Most of the time you play trolls and some desert elves accompanying Grog.<br />
<br />
'''Version:''' 3.0.1<br />
<br />
<br />
=== The Unstoppable Legion ===<br />
<br />
''Horseback campaign. The kingdom of Suveran, far away from Wesnoth, is under attack. Only Deuterus, a Great Druid, knows their weakness and only Viktor, a young noble, dares go on the quest to stop them.''<br />
<br />
'''Author:''' Chris Neville-Smith (Chris NS)<br />
<br />
'''Maintainer:''' Chris Neville-Smith (Chris NS)<br />
<br />
'''Status:''' WIP<br />
<br />
'''Length:''' Currently 15 playable sceanrios, including a fork of three paths near the beginning, and another fork of two paths later on.<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Mainly Skirmish<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Unstoppable_Legion/en_US/The_Unstoppable_Legion.html Custom units]'''<br />
<br />
'''Faction/Era:''' Play mounted units, including expanded Cavalryman line, and completely new Bowrider line. Joined later by Dwarves. Main enemies are the dark fighters and dark cultists.<br />
<br />
'''Version:''' 0.8.7<br />
<br />
<br />
=== The White Troll ===<br />
<br />
''The story of a white troll whelp with strange magic powers, who is raised in an elvish village.''<br />
<br />
'''Author:''' Wesnoth Italian Forum<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 8 scenarios<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default: you play with elves and trolls. Also features custom units with special advancements and abilities.<br />
<br />
'''[http://units.wesnoth.org/1.10/White_Troll/en_US/white_troll.html Custom Units]'''<br />
<br />
'''Version:''' 0.7.5<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=38828<br />
<br />
<br />
=== To Lands Unknown ===<br />
<br />
''This is the story of Mehir, the Summoner, and his journey to lands unknown.''<br />
<br />
'''Author:''' inferno8<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 20 scenarios, 4 dialogue only<br />
<br />
'''Difficulty:''' Intermediate (Era of Magic)<br />
<br />
'''Style''': Skirmish, Dungeon<br />
<br />
'''Era:''' Era of Magic<br />
<br />
'''Version:''' 1.6.0<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=31799<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#To_Lands_Unknown Players´ Review]'''<br />
<br />
<br />
=== Up from Slavery ===<br />
<br />
''The Orcei are captives in the imperial city of Lavinium, gladiators performing for the emperor Optus Maximus. All it will take, however, is one orc to lead his people to freedom. The Samnis called Sparxus may be that orc.''<br />
<br />
'''Author:''' turin<br />
<br />
'''Maintainer:''' UnwiseOwl<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 7 scenarios<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Arena (= No recruit, small group gladiator fights)<br />
<br />
'''Faction/Era:''' Imperial Era, Orcei Gladiatores<br />
<br />
'''Version:''' 0.6.0<br />
<br />
'''Note:''' (Maintainer) At some point, I am intending to completely re-work this campaign to be a multi-player campaign, with one side led by Sparxus and one by Gravirivus. If anyone would like to take this on or has ideas for how to accomplish this, let us know. Nevertheless, its playable as a single player campaign now with some nice ideas that could be developed further.]<br />
<br />
<br />
=== Warmaster ===<br />
<br />
''One day the scout of your king brings a mysterious little stone, called Zrai-Stone, back from one of his trips. Soon that stone causes a lot of trouble...''<br />
<br />
'''Author:''' Conkinator<br />
<br />
'''Maintainer:''' trewe<br />
<br />
'''Version:''' 1.3.5<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 16 battle + 2 bonus + 1 epilogue scenarios<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Faction:''' Default (loyalists)<br />
<br />
'''Style:''' Skirmish, Survival<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=15527<br />
<br />
<br />
=== Way of Dragon ===<br />
<br />
''The story of what might happen if a person against his will transform into a dragon...''<br />
<br />
'''Author:''' DrakeDragon<br />
<br />
'''Status:''' Complete <br />
<br />
'''Length:''' 7 playable scenarios + 1 dialogue-only<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish/RPG<br />
<br />
'''Faction/Era:''' Default Loyalists<br />
<br />
'''Version:''' 1.2.0<br />
<br />
'''Forum:''' [http://forums.wesnoth.org/viewtopic.php?f=8&t=37876 Wesnoth Forum] [http://uporoom.ru/index.php/topic,179.0.html Russian Forum]<br />
<br />
'''Note:''' (Adamant14) Promising short campaign, you play with just a few units.<br />
<br />
<br />
<br />
<br />
<br />
== Battle for Wesnoth 1.11.x - development ==<br />
<br />
''Campaigns available in the 1.11.x development version.''<br />
<br />
''Please note: Battle for Wesnoth 1.11.0 features a bug that messes up the selection of difficulty levels.''<br />
<br />
<br />
=== Antar, Son of Rheor ===<br />
<br />
''This is the story about a young Lord and his first mission; sent by his father the young Lord Antar has to relieve his neighbours; he has to convince the Elves and Dwarves to ally him; he has to fight against hordes of Orcs and Endless Undead; and finally he has to defeat Mal Kazur, the mastermind who is behind all the evil.''<br />
<br />
'''Author:''' Adamant14<br />
<br />
'''Status:''' WIP<br />
<br />
'''Length:''' 9 playable scenarios / 1 cutscene <br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Loyalists and Elves (feat. fencer as main hero + various allies)<br />
<br />
'''Version:''' 0.9.9<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36075<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Antar.2C_Son_of_Rheor Players´ Review]'''<br />
<br />
'''Note:''' (Adamant14) The campaign did not work with BfW version 1.11.0, or BfW version 1.11.1, so please use BfW version 1.11.2 or later!<br />
<br />
<br />
=== A Song of Fire ===<br />
<br />
''''''Part I: The Last War''' - In a long-forgotten era, at the heart of the Great Continent, an ancestral evil is awakened, threatening to destroy the whole world. Follow young Myra in the war that will alter the future of Irdya and its peoples forever.''<br />
<br />
''''''Part II: Towards the Rising Sun''' - After the vicious Last War, Myra has become the new leader of Aragwaithi and Windsong alike. Albeit young and shaken by many losses, she must steel herself to lead her people through the vast and hostile Hannuk Steppes. However, her journey will take them all farther than in their wildest dreams. Furthermore, Myra must deal with the evil influence of the mysterious red gem she found after the last battle.''<br />
<br />
''''''Part III: Raging Skies''' - The refugees have finally found a new home: families are built, allies are made and, for the first time in years, Myra and her friends know peace. However, when everything seems normal, ambition and thirst for power cause the break out of a continental war. And, amidst this new storm, an old foe rises agan, more powerful than ever. Witness the end of the song of Irdya's first great heroine.''<br />
<br />
'''Author:''' revansurik<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 36 scenarios<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle<br />
<br />
'''Faction/Era:''' Default+War of Legends<br />
<br />
'''Version:''' 0.3.4<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=38210<br />
<br />
<br />
=== Bad Moon Rising ===<br />
<br />
''An expedition to gather treasure from the cold north sets off compounding disaster.''<br />
<br />
'''Author:''' Doofus-01<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 20 scenarios<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Archaic Era<br />
<br />
'''Version:''' 1.5.8<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=31348<br />
<br />
<br />
=== Birth of a Lich ===<br />
<br />
''This is the life story of the dreaded lich Malifor, his struggle as a mage outcast, the orcish conquest of the northlands and his transformation to quench the thirst for revenge''<br />
<br />
'''Author:''' chak_abhi<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 12 playable scenarios / 2 dialogue only<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle, Dungeon<br />
<br />
'''Faction/Era:''' Human outlaws, dwarves, undead<br />
<br />
'''[http://units.wesnoth.org/1.10/Birth_of_a_Lich/en_US/Birth_of_a_Lich.html Custom Units]<br />
<br />
'''Version:''' 1.0.3<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37057<br />
<br />
<br />
=== Coming of the Storm ===<br />
<br />
''A new recruit joins the imperial army, eager to change the world and see combat. Little does he realise just how much action he will get and where his journey will take him. ''<br />
<br />
'''Author:''' TrashMan<br />
<br />
'''Status:''' WIP<br />
<br />
'''Length:''' 26 playable scenarios / 4 dialogue only<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle, Dungeon<br />
<br />
'''Faction/Era:''' Default<br />
<br />
'''Version:''' 1.2.1<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=23361<br />
<br />
<br />
=== Legend of Far North ===<br />
<br />
''The tale of the legendary Black Eye Karun,depicting his rise to power, his successes and his brutal assassination.'<br />
<br />
'''Author:''' chak_abhi<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 16 playable scenarios / 1 dialogue only,1 cutscene<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle<br />
<br />
'''Faction/Era:''' Orcs, Trolls, Saurians, Nagas<br />
<br />
'''[http://units.wesnoth.org/1.10/Legend_of_Far_North/en_US/Legend_of_Far_North.html Custom Units]'''<br />
<br />
'''Version:''' 1.0.2<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=34769<br />
<br />
<br />
=== Legend of the Invincibles ===<br />
<br />
'''''Part I: Shrouded in Darkness''' (5 chapters, 90 scenarios) - A pair of heroes, after stopping an orcish thread, are outcast into caves, where they have no other choice than to become liches in order to survive. They preserved their original appearance and moral principles, and fight in various skirmishes against evil (although using evil methods sometimes), until the Fall, when they are buried alive under the ashes of the third sun.''<br />
<br />
'''''Part II: Into the Light''' (4 chapters, 96 scenarios at the moment) - Long after the Fall, the lich heroes awaken. Searching for more power, they manage to resurrect themselves as living beings, but this time more powerful and ridden of the evil within. But the evil from inside them did not cease to exist, and started a campaign to conquer the world. Stopping the campaign caused an even worse disaster...''<br />
<br />
'''Author:''' Dugi <br />
<br />
'''Status:''' WiP (but Part I might be considered complete)<br />
<br />
'''Length:''' 185 (+7 talk-only) scenarios at the moment<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' mostly Skirmish and Dungeon (all other styles are present as well, but less frequently)<br />
<br />
'''Faction/Era:''' Elves, Loyalists, Undead, Dwarves; but they advance past their usual maximum level<br />
<br />
'''Version:''' 2.5.0<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Legends_of_the_Invincibles Players´ Review]'''<br />
<br />
'''Note:''' The most unique feature of this campaign is its RPG-like unit development system, enemies drop items units can use, leaders are stronger than most usual units and all units get AMLA (after maximum level advancement) after reaching their maximum level (that is also increased by a load of additional level 4 units).<br />
<br />
<br />
=== Rebellion in the North ===<br />
<br />
''A great orcish uprising tends to destabilise the Northlands. As the future Lord Protector of the Northern Alliance you have to crush the rebellion and establish peace again."<br />
<br />
'''Author:''' chak_abhi<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 24 playable scenarios / 3 dialogue only,2 cutscenes<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle<br />
<br />
'''Faction/Era:''' Loyalists, Dwarves, Gryphons, Merfolk<br />
<br />
'''Version:''' 1.1.12<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=33059<br />
<br />
<br />
=== Ruthless ===<br />
<br />
''A bard (an aging criminal) is walking in wasteland. Nothing but two hands in his pockets, and nothing but stones around. Suddenly he sees a knight on errand--a dangerous opponent, especially in broad daylight. The two strangers are soon sitting by the campfire, and the bard is telling a story.<br />
(Beginner level, 10+ fights).''<br />
<br />
'''Author:''' homunculus<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 12 playable scenarios + 5 cutscene scenarios<br />
<br />
'''Difficulty:''' Normal <br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default (Orcs)<br />
<br />
'''Version:''' 1.0.4<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37874<br />
<br />
'''Note:''' (Adamant14) Recommendable campaign, with smart unusual ideas and a good detailed story.<br />
You fight with few units on small but perfect maps. About the difficulty: The author describes his campaign as 'beginner level', but for me the difficulty is rather NORMAL than EASY.<br />
<br />
<br />
=== The Devil's Flute ===<br />
<br />
'''Status:''' Complete, unmaintained<br />
<br />
'''Length:''' 10 scenarios<br />
<br />
'''Author:''' lipk<br />
<br />
'''Description:''' Creona, the well-known assassin, gets a strange job from a strange person. So, in fact, it's no surprise that things take a strange turn...<br />
<br />
'''Version:''' 0.1.4c<br />
<br />
'''Difficulty:''' Unbalanced<br />
<br />
'''Style:''' Skirmish, Minigames<br />
<br />
'''Faction/Era:''' Outlaws<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36044<br />
<br />
<br />
<br />
== [[Guide_to_UMC_Campaigns/Players_Reviews|Player Reviews]] ==<br />
<br />
[[Category:Campaigns|*]]</div>Lipkhttps://wiki.wesnoth.org/index.php?title=Player_UMC_Reviews&diff=51412Player UMC Reviews2013-06-16T13:17:30Z<p>Lipk: typo</p>
<hr />
<div>''This is a place where you can add your reviews for the current (1.10.x/1.11.x) UMC campaigns. Please edit, it is a wiki.''<br />
<br />
<br />
<br />
<br />
<br />
<br />
=== Blueprint [add the name of the reviewed campaign here] ===<br />
==== Review by [add your name here] (version number of reviewed campaign) ====<br />
<br />
'''Tags:''' * describe the add-on using a few keywords<br />
<br />
'''Review:''' * personal evaluation of the campaign taking into account different aspects such as gameplay, plot, map design, art, etc.<br />
<br />
'''Surroundings''' * add your rating of the visual part of the add-on here (1-10)<br />
<br />
'''Design:''' * add your rating of the general quality of scenarios here (1-10)<br />
<br />
'''Story:''' * add your rating of the story's quality here (1-10)<br />
<br />
'''Fun:''' * add your rating how much enjoyment did this add-on bring to you here (1-10)<br />
<br />
'''Replay value:''' * add your rating about your tendency to play this add-on again here (1-10)<br />
<br />
'''Player note:''' * add your overall rating here (1-10)<br />
<br />
'''Link to review:''' * if you copied the review from the forums then add the related link here<br />
<br />
== Battle for Wesnoth UMC campaign / reviews ==<br />
<br />
''Reviews for Campaigns available in the 1.10.x stable and 1.11.x development versions.''<br />
<br />
<br />
=== After the Storm ===<br />
==== Review by vultraz ====<br />
'''Tags:''' fall, dungeon, elves<br />
<br />
'''Description:''' After the Emperor of Chaos was defeated, the free civilizations of the Great Continent hoped that his followers would abandon the ongoing war. Meanwhile, Galas and his unlikely band of heroes head back to the northern lands to request aid for their next journey.<br />
<br />
'''Summary:''' This campaign is, in my opinion, one of the very best UMC campaigns. It follows the story of Elynia and her band and their adventures following the events of <i>Invasion from the Unknown</i>. Since the campaign is divided into three episodes, I'll talk about each one separately.<br />
<br />
<b>Episode 1:</b> This one starts out slow, but speeds up pretty soon. The first few scenarios capture your attention and want to make you keep playing. It features an appearance of Zocthanol Isle from <i>Under the Burning Suns</i>, which I find quite nice. The late scenarios feature, as in all the episodes, AtS's signature dungeon crawling scenarios, of which I am very fond. My only complaint about this episode would be the third scenario, which is quite tedious after you build up a strong force. Other than that, a good episode.<br />
<br />
<b>Episode 2:</b> This episode jumps in right after the cliffhanger end of episode 1, and finds Elynia 1 year into the future as a result of the explosion in Wesmere. We quickly jump right into the action, and discover a very important character in scenario 2. There are a bunch of nice plot points here, including the deal made with the demon lord, and Elynia's journey to the valley from the beginning of IftU. As before, the last few scenarios feature AtS's dungeon crawling, including a very large scenario 10 map. The episode ends on what I consider a beautiful cutscene, one which finishes with a perfect flair.<br />
<br />
<b>Episode 3:</b> Shadowmaster truly saved the best for last, here. Several amazing plot points come into play in this scenario, as well as an introducing of many new characters and custom units. This episode brings together almost all the plot threads that had been laid throughout the previous two episodes and IftU and wraps them up in an elegant bow, while at the same time exploring in new directions. Gameplay wise, he managed to keep the scenarios interesting and fun after all this time. More dungeon crawling, and a gigantic final scenario followed by several cutscenes wrap up this amazing campaign. One little complaint might be about scenario 4, which I found quite hard to beat.<br />
<br />
All in all, I thoroughly enjoyed this campaign and its story. The maps, characters, and gameplay had me hooked, and I recommend this campaign to anyone.<br />
<br />
'''Surroundings:''' 10<br />
<br />
'''Design:''' 10<br />
<br />
'''Story:''' 10<br />
<br />
'''Fun:''' 10<br />
<br />
'''Replay value:''' 9<br />
<br />
'''Player Note:''' 10<br />
<br />
=== A New Order ===<br />
==== Review by Pyrophorus ====<br />
'''Tags:''' Akladians,skirmish,story<br />
<br />
'''Description:''' A new Order is a rather long campaign, telling the story of the Akladians reign over Wesnoth. In short, Akladians are a barbarian people, coming from east, flying from slavery, who took control over the decadent Wesnoth kingdom. The story begins later, when Gawen, son of the Akladian king and a Wesnoth noblewoman, have to fight his way to the throne, reconciliate Wesnothians and Akladians to face the threat of a powerful necromancer.<br />
<br />
The campaign is a classical skirmish with some large battles, and some riddles to solve. You'll play here Akladian and Khalifate factions. <br />
<br />
'''Summary:''' It is one of the more old and mature projects in UMC (eight years old !), polished and enhanced for years, and still actively updated.<br />
<br />
At first glance, the story can look classical and boring, but it is one of the best campaign story one can find: interesting and various characters, many plot twists, a real world description make the story really interesting and original. Not for children, as the note says, should be understood as being not the kind of childish fancy most campaigns are built on. Maps and battles have been thoroughly designed and balanced, and everything could be said perfect here, with a slight reservation about graphics (but they're progressing for now).<br />
<br />
A classic which many different people can enjoy.<br />
<br />
'''Surroundings:''' 8<br />
<br />
'''Design:''' 8<br />
<br />
'''Story:''' 10<br />
<br />
'''Fun:''' 8<br />
<br />
'''Replay value:''' 6<br />
<br />
'''Player note:''' 10<br />
<br />
<br />
=== Antar, Son of Rheor ===<br />
==== Review by Dugi ====<br />
'''Tags:''' loyalists, skirmish, dungeon<br />
<br />
'''Description:''' A noble's property is attacked by undead, and he has to retaliate in order to stop the undead peril. In his journey, he passes through many other settlements, some of them are attacked by the undead too, some are just naturally hostile, some are corrupted by the promise of immortality the undeath brings and send undead legions to fight him. All of them seem to be just minions of a stronger force, but before he is reached, the end of completed part is here. 9 out of intended 17 scenarios complete.<br />
<br />
'''Summary:''' The scenarios are designed very well, assuring that you will not get bored. Many events take place in the middles of scenarios, making scenarios less usual and different from others. Although this is a nice feature, you are frequently surprised by many elements you cannot expect and it breaks planning. There are a few special units, who have special AMLA or some special abilities, that have an unusual and very practical use on the battlefield. It is balanced quite well despite its incompleteness. The story didn't impress me, though. It is very usual, a group of loyalists going to stop a rise of a lich lord whose dreams of conquest are a endangering anyone is classic. Do not expect anything from minor events neither, the encounters in scenarios are pretty mainstream story-wise as well. Unexpected end in the middle of campaign is a really unpleasant surprise too. There is a little need to replay it, because you will know what will happen, and many of these encounters are easy with proper recruits, but maybe a few years will provide a decent amnesia for that. For short, it is a campaign strongly focusing on interesting gameplay, but if you seek heavy challenges or a deeper plot, this is not what you want.<br />
<br />
'''Surroundings:''' 7<br />
<br />
'''Design:''' 10<br />
<br />
'''Story:''' 6<br />
<br />
'''Fun:''' 7<br />
<br />
'''Replay value:''' 7<br />
<br />
'''Player Note:''' 8 (if I forget the missing end, and assume that these scenarios are like the existing ones)<br />
<br />
<br />
==== Review by tribes55, dean ====<br />
'''"Tags:"''' Adventurous,Intriguing<br />
<br />
'''"Description:"''' You play as a limited Loyalist faction, and are mainly fighting Undead, Orcish units and goblins. You have alliances with Dwarves and Elves.<br />
<br />
'''"Summary:"''' I liked how the campaign required thinking outside of the box, but I didn't like how on the first scenario there was VERY limited strategies you could use to win. Most scenarios are not like this in this campaign, though.<br />
<br />
'''"Surroundings:"''' Your surroundings are constantly changing, but the maps are always interesting and in some scenarios rewarding for exploring them. 8/10<br />
<br />
'''"Design:"''' The scenarios aren't repetitive and leave you wanting to play the next campaign. 8/10<br />
Story: Seeing as the story is what makes me want to play the campaign, and this one kept me to the very end of the currently limited scenarios I'd give it story a 8/10.<br />
<br />
'''"Fun:"''' * Very rarely was I bored. 7/10<br />
Replay value: * Some scenarios challenge you to do the Scenario in a more efficient way which would make me want to replay the campaign and see what I could do better this time. 7/10<br />
<br />
Player note: * <br />
Overall rating would be 8/10.<br />
<br />
<br />
=== Fate of a Princess ===<br />
==== Review by Paulomat4 ====<br />
'''Tags:''' elves, rogues, riders, skirmish, dungeon, RPG<br />
<br />
Part I: Baldres, a notorious robber baron, flees Wesnoth with his followers and sets off into the northlands to evade the kings justice. The barons deeds and misdeeds are to change the balance of power between orcs and non-orcs throughout the northlands, and will carry consequences long after his eventual death.<br />
Part II: The Greenwood elves face a crisis which demands the return of the queen's estranged half-elven half-sister, Baldreds daughter. Two brave young elves must make a perilous journey to find her and bring her back to her former home. If they fail, the whole northlands will be engulfed in war with the resurgent orcs...<br />
<br />
'''Summary:''' Nice story, which is composed of two parts. In the first part you mainly fight with bandit knights, and often have to rush from one point to another. in the second part, gameplay consists of elves, and various other races like drakes or saurians or dwarves. You will fight various races in the first part, and mostly orcs in the second. The campaign feature many custom units, and some your heroes will even have AMLA advancements. Also you will be able to collect many items through the campaign, which may cause some units to be overpowered but this is also bound to storyline reasons. The story reveals a lot about the northlands and their different factions.<br />
<br />
'''Surroundings:''' 8<br />
<br />
'''Design:''' 9<br />
<br />
'''Story:''' 7<br />
<br />
'''Fun:''' 9<br />
<br />
'''Replay value:''' 8<br />
<br />
'''Player Note:''' 8<br />
<br />
=== Invasion from the Unknown ===<br />
==== Review by Dugi ====<br />
'''Tags:''' elves, undead, skirmish, dungeon, puzzle<br />
<br />
'''Description:''' Starting with usual elves in forests and deserts, quickly adding the undead faction in a battle against several custom factions, evil human army, mysterious Verlissh, sinister demons, robotic automatons and dreadful, biomechanic Shaxtrals, that progresses through caves and steppes into the mysterious Dark Hive, where the Shadow Master dwells. 30 scenarios. Complete.<br />
<br />
'''Summary:''' This campaign has a good and interesting story, enough long to develop an army of recalls an use it well. You will encounter many new kinds of enemies, assuring that you will never get bored, even if you aren't a fan of the default era. Its gameplay is unique in many ways, frequently, the enemies are just coming, and you have to pass through the area instead of defeating some leader. Another speciality are boss fights, when you can defeat a boss only using some special technique. The campaign is also balanced pretty well, easy difficulty is to enjoy the story, hard difficulty is really challenging.<br />
However, almost all new units lack animations of any kind, that harms the visual part of this add-on. Also, some elements of the storyline are too exaggerated. But these little problems will not spoil anything.<br />
<br />
'''Surroundings:''' 7<br />
<br />
'''Design:''' 10<br />
<br />
'''Story:''' 9<br />
<br />
'''Fun:''' 10<br />
<br />
'''Replay value:''' 7<br />
<br />
'''Player Note:''' 10<br />
<br />
''Review by Dugi''<br />
<br />
<br />
=== Legend of the Invincibles ===<br />
==== Review by Raijer ====<br />
'''Description''': A huge campaign that will be 10 chapters long (9 chapters currently), and will have more than 200 scenarios. This campaign follows 2 heroes that find a way to eternal life, going through times, before and after the Fall, and witnessing some of the most important events in Wesnoth's history, like the raise of the second sun.<br />
<br />
The player will be able to use humans, elves, but also undead and some special units, and will fight against basically anything you can imagine, going from orcs to demons and passing by some robots. It includes an item system, with enemy drops, crafting and gears, giving additions to units' normal attacks. The history permits to get a huge recall list, with level 4 units in the main races used and new AMLAs possibilities.<br />
<br />
'''Summary''': This campaign has a really long story, which explains some of Wesnoth's history that wasn't talked much about in other campaigns. Despite its length, it actually never gets boring because the story is well-done, stays really coherent, but also because of the scenarios' diversity, having huge battles but also some dungeons, and special objectives. I really like how this campaign makes a mix of Wesnoth's turn-based system and the basic RPG's system, like spells, items, crafting and more… But also because it creates new strategies that can't be found in normal campaigns, thanks to the item system and AMLAs that weren't really used in other campaigns, while keeping Wesnoth's basic way of playing. The difficulty is pretty much standard, as easy being easy for everyone, and hard being really hard and most likely a huge tactical challenge. Though some scenarios in normal can be seen as really easy or really hard.<br />
<br />
I'm really happy about this campaign because it permits to personalize your units depending on what you want them to be able to do with the AMLAs, but also with the huge item bank. I also liked the story, because i don't like how some part in Wesnoth's history are left unexplained, and this campaign goes through Irdya's history, filling some blanks. Finally, i would like to say that this campaign can be played again and again, as there are some secret scenarios, but also infinite possibilities with the items and AMLAs, which make each time completely different.<br />
<br />
The bad sides: the item inventory is slow (seems like it will be fixed), can be really annoying in the later parts. The leaders can seem overpowered to unacquainted players though it changes as you advance. The balance isn't complete yet, but it most likely will be done as soon as the story itself is finished. There still are some bugs around, but none that stops from playing as far as i know.<br />
And last, big problem: THERE'S ONLY 1 CHAPTER LEFT BEFORE THE STORY ENDS!<br />
<br />
'''Surroundings''': 7<br />
<br />
'''Design''': 7<br />
<br />
'''Story''': 10<br />
<br />
'''Fun''': 10<br />
<br />
'''Replay value''': 9<br />
<br />
'''Player note''': 10<br />
<br />
<br />
==== Review by bumbadadabum ====<br />
'''Description:''' (quoting Raijer) A huge campaign that will be 10 chapters long (9 chapters currently), and will have more than 200 scenarios. This campaign follows 2 heroes that find a way to eternal life, going through times, before and after the Fall, and witnessing some of the most important events in Wesnoth's history, like the raise of the second sun.<br />
<br />
The player will be able to use humans, elves, but also undead and some special units, and will fight against basically anything you can imagine, going from orcs to demons and passing by some robots. It includes an item system, with enemy drops, crafting and gears, giving additions to units' normal attacks. The history permits to get a huge recall list, with level 4 units in the main races used and new AMLAs possibilities. <br />
<br />
'''Summary:''' I didn't like this campaign a single bit. The scenarios feel like they've been designed 'in a hurry' without paying any attention to detail. The lack of variety or events in scenarios make them very boring to play, and often made me want to just :n and be done with them. The scale of the scenarios is completely blown out of scale, and this makes it extremely tedious to play, as everytime you press the end turn button you have to wait for the literally hundreds of enemies to move. The maps are not horrible, but far from mainline level. The story (which is one of the most important things in a campaign for me) is perhaps one of the worst things about this campaign. The dialog is badly written (in places where it is present. There isn't much dialog outside of starting dialog) and feels completely emotionless. The characters are paper-thin and not very well developed, and that only contributes to my thinking that the entire story is only there to tie the 185 scenarios together. It feels ridiculous and sometimes made me wonder what I was doing with my life, after I read another dialog. The art of the campaign consists mostly of bad frankensteins or horribly drawn units, with the exceptions of the portraits for Efraim and Lethalia, which actually look pretty decent. Overall, I feel like the pretty good idea behind the RPG engine, which in my opinion is also poorly executed, has gone to waste by it being in this campaign. I think this campaign is bad and doesn't deserve any of the praise it often receives on the forums. I would not recommend this campaign to anyone.<br />
<br />
'''Surroundings:''' 4<br />
<br />
'''Design:''' 2<br />
<br />
'''Story:''' 3<br />
<br />
'''Fun:''' 3<br />
<br />
'''Replay value:''' 4<br />
<br />
'''Player note:''' 2<br />
<br />
<br />
==== Review by t3st3r ====<br />
'''Description''': Really large and custom campaign about two heroes who are about to become legendary half-gods. During campaings there are also several "lesser" heroes with remarkable powers and abilities as well, which makes game more interesting for sure. Right now there are 9 chapters, about 200 scenarios (10 planned as far as I know). Largest and most diverse campaign I've seen so far for BfW. And the only campaign I've replayed THREE times. Because I like overall gameplay so much that I has been willing to play it even when there was 3 or 4 chapters ready, so it has been quite incomplete. To my taste it's the most epic campaign for BfW to the date. <br />
<br />
In this campaign player could find nearly all you could expect from decent game scripting engine and seriously customized scenarios. And nearly all you've missed in original BfW campaigns and maps. Great AMLAs, much better than original BfW AMLAs are. Isn't it boring to kill 20 enemies just to get some dumb +3 hp bonus? This campaign corrects this problem: most advancements are actually useful and you can control units development path (to some degree). There are some extra LVLs for many units, this is really adding up. Sure, there could be factions balance issues if you use such settings for PvP, but it's not a problem of campaign itself and it really adds up to gameplay. There will be a number of really strong enemies of truly epic scale. Real dragons, real monsters, real freaks, real arch-enemies. All kings of dangerous things you can imagine and even more than that. Some of them require very custom approach so reading in-game messages/hints is a must. There is decent items system as well. Sure, geared warriors could handle much more than those with bare hands or simple weapons. Some items could even allow "simple" (non-hero) units to challenge some tough monsters on their own. Though many arch-enemies would be hard to kill even for main heroes without proper handling and using their weak points. To my taste, I really like this campaign. In fact it's my favorite campaign, thanks to custome AMLAs, 10 chapters, items system, strong enemies and various twists to add more fun to gameplay. Sometimes you can also use units from previous chapters, which allows you to have strong army of relatively few powerful units, which is just convenient to play. This is taken into account and those who continues from old chapters are facing much stronger resistance than those who starts chapter from scratch with "dummy" heroes and lack of geared and leveled army. There are some secrets and treasures hidden, custom events and so on. There is even some basic form of item crafting, some multi-part artefacts and so on. So players who are careful to details could have some extra/optional fun in game. This is what always distinguishes well thought maps from serious map makers and scripters. So if someone tired of standard boring BfW game mechanics, it's really worth to try this campaign out to see something new, beyond standard BFW mechanics and take some completely new look on familiar storylines.<br />
<br />
'''Summary''': This is a very long campaign, telling the story of two heroes who would follow a long path from mere mortals up to strong half-gods, capable of challenging almost any kinds of <br />
things. This is somewhat mixed into classic BfW storyline and shows it from different point of view, which isn't as simple as it looks like. First chapters show us how heroes would become some immortal and powerful beings, then they will gain more power and finally manage to become half-gods. While it's really long story, there are so many types of enemies, their abilities, new storyline twists, unexpected things and so on, that it's still remains fun to play. Even after you played many chapters already. Sure, some scenarios are lengthy and/or take too much efforts to control units or wait for AI moves. However, if campaign haves ~200 scenarios, it's hard to iron out all issues in just one shot. Yet it still impressive already, especially granted that it's still work in progress and is not yet complete. <br />
<br />
Difficulty of this campaign varies. Depending on paths you've taken, units equipent and how all this affects certain enemies, some enemies could be easier/harder than others. On normal difficulty level it should be manageable for seasoned BfW player. I would not recommend this campaign to newbies as it would teach you many funny things which will be (unfortunately!) missing in most of other BfW campaigns. Players have to understand it uses enhanced game mechanics. Maps vary wildly, ranging from standard "kill them all" scenarios to RPG and quest style maps. You can develop some really new and uncommon tactics. For example, you can use meteor spell to blow up a host of powerful enemies and then teleport away if situation permits. New abilities for new strategies are nearly countless, thanks to improved AMLAs, items system and new spells and their AMLA improvements.<br />
<br />
In this campaign you can often have "convenient" army composed of relatively few relatively powerful units with some special abilities, complementing each other. As for me, it's annoying to deal with 100 lvl 1 weaklings. I'm as human is inefficient and slow in doing so. This campaign will be far more convenient most of time. It's usually enough to have 10-20 strong units + some heroes to win scenario. <br />
<br />
Though it's noteworthy to mention that advanced items system and AMLAs are making it hard keep it perfectly balanced in all corner cases in all possible combinations, so sometimes you can face some too simple or quite hard maps, unexpectedly. However, unless there is some bug, seasoned BfW players should not have real troubles in most places. And it will feel unique each time you play it, as you will take different paths here and there. That what makes it funny to replay, trying different paths in advancements.<br />
<br />
The most daunting issue to my taste is that BfW core neither really supports items system on it's own, nor it provides any decent UI to deal with items. I think BfW authors should consider adding support for items and items management to the BfW core to make mapmakers life easier. It's not only campaign where this problem exists, there are dozen and half of campaigns sharing same issue. But as this campaign makes extensive use of items, it's where problem is getting really obvious. AI is really dumb and clueless at handling items/extended features, etc. And sometimes in-game computations could take a while, so powerful CPU could be a good idea. I can also admit that authors of various campaigns have minor mismatches in explaining the very same events from BfW world. Ideally, they mismatches have to be corrected but it requires cooperation of large number of independent people and I can understand it's somewhat troublesome to achieve. And of course there are some things to iron out as it's still work in progress. This probably applies to complaints that AI takes a long time to complete turns, etc - on some maps it's really good idea to go to preferences and set "skip AI moves" option on.<br />
<br />
'''Surroundings''': 8<br />
<br />
'''Design''': 8<br />
<br />
'''Story''': 9<br />
<br />
'''Fun''': 10<br />
<br />
'''Replay value''': 9<br />
<br />
'''Player note''': 10<br />
<br />
<br />
=== Panther Lord ===<br />
==== Review by taptap ====<br />
Panther Lord is one of my favourite campaigns and on higher difficulties one of the most challenging. Unlike many campaigns with an anticlimactic end (Northern Rebirth, Heir to the Throne etc.) it is unrelenting from start until the end (I suffered more than 140 casualties during its 14 scenarios). Velensk is a good player and it shows. <br />
<br />
This is the showcase campaign for the Era of Four Moons, while Salt Wars is a short and much easier introduction. The Era itself is well balanced, with many novel ideas and no elves. Admittedly, at first I shuddered at the idea of playing "half-naked wild with dark-coloured sprites" - I was quite troubled that it might be a collection of racist stereotypes, but playing with it, it certainly didn't feel so. (Much better indeed than the typical association of orcs in Tolkien-esque fantasy with mongols / turks.) There aren't only tribal Darklanders and Highlanders, but Sea States and Imperialists as well. Each of them plays very differently, none of them is depicted as timeless or "always chaotic evil", even the Imperialists, the enemies in the campaign, get the opportunity to declare themselves. It certainly benefits from the background world (IALFA developed by the maintainer of the campaign) even if you only see a glimpse of it. <br />
<br />
The hero of the campaign is a mercenary outcast of his own Darklander civilization. When learning about plans to raze and colonize the jungles of his people by the imperialists he starts the quest to rescue his people. His friend the Panther spirit, to whom the campaign owes its name, always at his side, he is rallying troops and mercenaries around him, but soon he has to realize that change is inevitable. Changing their ways they may have hope to withstand or else they will be changed by force and subjugation. But how to convince his own people when he is an upstart at best, a traitor and spirit-friend at worst?<br />
<br />
While the campaign is centered around Darklanders, the player has the choice of hiring (and recalling) a limited amount of highly useful mercenaries of the other factions of the Era. The campaign features small scale to a few large scale battles and puts different territory to good use encouraging the use of mercenaries and different unit types. I omit the numbers, but this campaign is certainly recommended.<br />
<br />
<br />
=== Swamplings ===<br />
==== Review by Dunno ====<br />
'''Description:''' Swamplings is the name of goblin tribe living in swamps, banished by orcs. In an unfortunate turn of events, those goblins get tangled up in human affairs and must fight for their very survival. The player also learns how goblins started riding wolves.<br />
<br />
'''Summary:''' It's a decent, finished and stable campaign with interesting plot. There are many humorous scenes and some serious ones, there are standard battle scenarios and various original missions. There are also some high quality custom sprites, and maps are very good as well. It won't make your jaw drop, however, it's just a modest, enjoyable campaign.<br />
<br />
'''Surroundings:''' 7<br />
<br />
'''Design:''' 8<br />
<br />
'''Story:''' 8<br />
<br />
'''Fun:''' 9<br />
<br />
<br />
==== Review by Pyrophorus ====<br />
'''Tags:''' goblins,skirmish,story<br />
<br />
'''Description:''' see previous review.<br />
<br />
'''Summary:''' This campaign is very original and imaginative. First of all, it features not chivalrous heroes like most Wesnoth campaigns, but humble and rather stubborn people instead. More of it, the story is much more picaresque than epic, written in a delicious humorous tone, very unusual in Wesnoth world. IMO, it's one of the few really good writing one can find here. It's impossible to abstract this complex story, where everything goes in an unexpected way, to list every strange encounter, funny event and so on. If you like good writing, humor, as well as hardcore fighting, you'll really love this campaign. If not, just as Dunno says, it's honest, no more.<br />
<br />
'''Surroundings:''' 7<br />
<br />
'''Design:''' 8<br />
<br />
'''Story:''' 10<br />
<br />
'''Fun:''' 10<br />
<br />
'''Replay value:''' 7<br />
<br />
<br />
=== Talentless Mage ===<br />
==== Review by Dunno ====<br />
'''Description:''' A humorous story about a mage who managed to learn only one spell in his life and who takes command of N.O.O.B.S. (Noticeably - Optimal - Outstanding - Brilliant - Soldiers) squad. N.O.O.B.S. advance through amla with basic options like melee attack, melee damage etc. <br />
<br />
'''Summary:''' this here is Wesnoth parody at its best. The campaign mocks the common cliches in Wesnoth campaigns and overused events, like loyal units coming out of villages, random magical items scattered around the map and low quality frankensprites. Very absurd and pythonesque at times, you will keep smiling and laughing through the whole story.<br />
<br />
'''Surroundings:''' 6<br />
<br />
'''Design:''' 8<br />
<br />
'''Story:''' 9<br />
<br />
'''Fun:''' 10<br />
<br />
<br />
=== The Library of Kratemaqht ===<br />
==== Review by Wesbane ====<br />
The campaign is about genesis, course and outcome of civil war in empire of Anaktoron.<br />
Surroundings:<br />
The way campaign looks. How it feels and uses game engine is simply amazing and unseen before.<br />
Maps are nicely done although many parts of a map serve for story (decorative) purpose only what is not always good. You will travel through wealthy and populous kingdom which is torn apart by war. To create this impression in most of maps there is a lot of villages and they are placed in large groups, but map look doesn't suffer from it. More over you can feel destruction in game world as never before. Campaign features custom burning houses which are not only mere visual effect but have impact on battle course.<br />
It is one of most cinematic campaigns if not the most. Cutscenes are packed with action and take place in several locations. Also game transition fluently into cutscene and cutscene into game. What makes it even more interesting since you will never know is it just a cutscene?<br />
In terms of visual effects it also features the best epilogue ever.<br />
As it was not enough you can experience a true wesnoth dragon. It is so unusual that it need separate mention.<br />
Dragon is fully animated and have some nice custom sounds. Some of it animations are purely character play. Like roar and feasting. And last, but not least it preserves original wesnoth dragon concepts. It attacks with fangs and tail. Although it primary weapon is ranged magical fire breath which works as AoE attack when used offensively. There is one little bug with its animation, but it can't be noticed during playing it anyway.<br />
In short this campaign surely establish new standards for wesnoth in department of visuals.<br />
Design:<br />
Scenarios design is good. All levels are playable. Objectives are clearly formed, so it is known most of the time what to do. There are several minor bugs and one bigger that affects game to some degree. However they do not make impossible to play and enjoy campaign.<br />
Campaign is using default units although sometimes with unusual traits and abilities. Custom units are also present, but only as much as they are needed. Which is a great thing since it proves designer skill at using available resources. Beside that I really can't stand campaigns introducing many user made units.<br />
I liked much idea of premagic era and weakened magic users. Unfortunately any extra mages aren't useful since you have already better characters of this class. In fact after my recall list was cleaned up after Jevyans Return I never bothered to recruit them again.<br />
Gold carryover system is custom which is not a good choice for classic style adventure. Twenty percent instead of forty. Most probably this is caused by slightly overpopulated maps. Campaign is very easy, except two scenarios: Refugees and Loyalty's Cruel Reward. There is no moderately difficult scenarios. The huge difference between average level difficulty and hardest level is just to big. Most difficult scenarios are Refugees and Loyaltys Cruel Reward.<br />
Story:<br />
Amount of delivered information is enough. Writing style is good. Beginning is terrific. Switching between protagonists is cool, and quite innovative idea. Overall concept is nicely executed and creator skillfully merged a lot of facts from mainline into own story. To fully appreciate this playing The Rise of Wesnoth is recommended. However ending I found disappointing. It seemed rushed and unconvincing. Also few details don't match to reality of Irdya.<br />
Fun:<br />
Campaign is definitely entertaining. Well done battles. Good dialog. And full of fresh ideas. You can play as good and bad in a single campaign! Although I have nothing against being awesome most of the time enemies fell way to easily to my taste.<br />
Replay value:<br />
Campaign is nicely done and straight forward. Although there is nothing that would reject you from playing it again, there is nothing that would encourage you to do that either. No hidden secrets, no tactical challenges, no extra levels. No satisfying ending.<br />
<br />
Summary:<br />
Overall it is well made, really great, easy campaign suitable for beginners with story explaining some events from The Rise of Wesnoth. Bringing new standards in design, especially visual ones. It story is shown from several angles what is unique feature, but unfortunately potential of this solution wasn't used at all. If you are looking for deep plot, and tactical challenge you won't find it here.<br />
<br />
'''Surroundings: 10<br />
<br />
'''Design: 6<br />
<br />
'''Story: 7<br />
<br />
'''Fun: 7<br />
<br />
'''Replay value: 5<br />
<br />
'''Campaign score: 7<br />
<br />
'''Player note: 8<br />
<br />
'''Link to review:''' [http://forums.wesnoth.org/viewtopic.php?f=8&t=37798&start=45#p551674]<br />
<br />
<br />
=== To Lands Unknown ===<br />
==== Review by Dunno ====<br />
'''Description:''' This campaign tells about Mehir, a Summoner, who's working on a great quest of making the biggest magical circle ever made. If he and other summoners succeed, activating the circle will bring them to the Abyss, the lands unknown.<br />
<br />
'''Summary:''' The main idea behind this campaign and the Era of Magic (used by To Lands Unknown) is to take Wesnoth graphics to an entirely new level. Maps are no longer simple, repetitive hexes, instead many maps are absolutely mindblowing landscapes. In addition, all units are well made and animated. The story and gameplay, however, could have been done better. The campaign is quite long, and at times battles get boring.<br />
<br />
'''Surroundings:''' 10<br />
<br />
'''Design:''' 7<br />
<br />
'''Story:''' 5<br />
<br />
'''Fun:''' 6<br />
<br />
<br />
== Back to Guide to UMC Campaigns ==<br />
* '''[http://wiki.wesnoth.org/index.php?title=Guide_to_UMC_Campaigns Guide to UMC Campaigns]'''<br />
<br />
<br />
== Feedback Thread ==<br />
If you have criticism, ideas and suggestions then please post it in the feedback thread.<br />
<br />
Or maybe you don't want, or don't know how to edit the wiki page, then you can post your review also here. I will add it then to this page.<br />
* '''[http://forums.wesnoth.org/viewtopic.php?f=17&t=38946 Feedback Thread]'''</div>Lipkhttps://wiki.wesnoth.org/index.php?title=Guide_to_UMC_Content&diff=51403Guide to UMC Content2013-06-14T14:45:39Z<p>Lipk: Added TDF to the 1.11 list</p>
<hr />
<div>''This is a guide to the current (1.10.x/1.11.x) UMC campaigns for players. It aims to provide all the information not only about the story, but also about completion, difficulty and playing style of the campaign. See also [[Guide_to_UMC_Campaigns/Players_Reviews|Players Reviews]], as well as http://forums.wesnoth.org/viewtopic.php?f=8&t=37476 for further information and http://forums.wesnoth.org/viewtopic.php?f=8&t=36733 (for currently non-available UMC-content). Please edit, it is a wiki.''<br />
<br />
=== Blueprint ===<br />
<br />
'''Status:'''<br />
* Broken = Does not work at all<br />
* Incomplete = Partially written, no progress<br />
* WIP = Partially written, progress<br />
* Complete = Completely written, but buggy as well as potential balance issues.<br />
* Finished = Completely written, minimal to no bugs, slight balance issues possible. <br />
<br />
'''Length:'''<br />
<br />
'''Author:'''<br />
<br />
'''Maintainer:''' if not maintained by the author anymore.<br />
<br />
'''Description:'''<br />
<br />
'''Version: '''<br />
<br />
'''Requirements:'''<br />
<br />
'''Difficulty:'''<br />
<br />
Please note: Often campaigns introducing new mechanics are listed as expert level on the add-on server, here difficulty means the raw difficulty after the mechanics are understood.<br />
<br />
* Unbalanced = If you can't beat the hard mode, it isn't necessarily unbalanced, but if the difficulty changes erraticly from one scenario to the next and only people using the debug mode have seen the final, then it is.<br />
* Easy<br />
* Normal<br />
* Hard<br />
<br />
'''Style:''' <br />
<br />
Please note: Many campaigns will feature more than one style. Please list the most significant ones.<br />
<br />
* Skirmish = small to medium sized armies, your standard Wesnoth gameplay<br />
* Dungeon = long and narrow tunnels (not every underground scenario is a dungeon, a dungeon isn't necessarily underground)<br />
* RPG = role playing game elements such as talking with non-player-characters, item collection, dependency on a party of very few adventurers without or limited recruits<br />
* Survival = being exposed to changing, spawning enemies while remaining on the same map<br />
* Large Battle = large number of units on the battlefield, sizely maps<br />
* Simulation = campaigns feat. terrain modification, alternative resources<br />
* Boss battle = the challenge is to defeat a single powerful enemy unit<br />
* Minigames = there are puzzles and minigames in the campaign that significantly differ from standard Wesnoth gameplay<br />
<br />
'''Faction/Era:'''<br />
<br />
* Era for the whole campaign and more specifically the faction or unit composition you field.<br />
<br />
'''Custom units:'''<br />
<br />
* Link to the unit tree for cases that don't feel sufficiently described by Faction / Era entry.<br />
<br />
'''Forum:'''<br />
<br />
* Links to the feedback and development threads at forums.wesnoth.org<br />
<br />
<br />
<br />
<br />
<br />
== Battle for Wesnoth 1.10.x - stable ==<br />
<br />
''Campaigns available in the 1.10.x stable version.''<br />
<br />
<br />
<br />
<br />
=== After the Storm ===<br />
<br />
''Follow the journey of Galas and his band following the events of <i>Invasion from the Unknown</i>''<br />
<br />
'''Author:''' shadowmaster/ShikadiLord<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 3 episodes of 13 scenarios each, some of which are multi-part<br />
<br />
'''Difficulty:''' Medium-hard<br />
<br />
'''Style:''' Skirmish, Boss Battle, Dungeon<br />
<br />
'''Faction/Era:''' Many custom units<br />
<br />
'''Version:''' 0.9.2<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=32091<br />
<br />
'''Note:''' (vultraz) Long, very enjoyable campaign with great story.<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#After_the_Storm Players´ Review]'''<br />
<br />
=== Aldur The Great ===<br />
<br />
''This is a story about Aldur the Great.''<br />
<br />
'''Author:''' pintercsabi<br />
<br />
'''Status:''' Complete, but unbalanced<br />
<br />
'''Length:''' 5 playable scenarios<br />
<br />
'''Difficulty:''' Unbalanced<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default<br />
<br />
'''Version:''' 1.2.2<br />
<br />
'''Forum:''' -<br />
<br />
'''Note:''' (Adamant14) Short unbalanced campaign, maybe abandoned. You fight with Peasants, Ruffians and Woodsman against Orcs<br />
<br />
<br />
=== Alfhelm the Wise ===<br />
<br />
''This is the tale of Alfhelm, called by some the Wise, son of Alfric Conqueror. This is the tale of his victories over his enemies, and his rise to power in the clans of Marauderdom. This is the tale of his journey south and his destruction of the Lavinian Empire. And this is the tale of his demise in the dark forests far to the east of his homeland.''<br />
<br />
'''Author:''' turin<br />
<br />
'''Maintainer:''' UnwiseOwl<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 15 gameplay scenarios <br />
<br />
'''Difficulty:''' Moderate<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Imperial Era, Marauders.<br />
<br />
'''Version:''' 0.6.0<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=17144<br />
<br />
'''Note:''' (Maintainer) Though this campaign is complete and playable the whole way through, the code is four years old and pretty buggy. If you notice any errors while playing, please let me know and I'll incorporate the fixes into my next revision as soon as possible.]<br />
<br />
<br />
=== A New Order ===<br />
<br />
'''Author:''' szopen<br />
<br />
'''Status:''' Finished. <br />
<br />
'''Length:''' 45 scenarios.<br />
<br />
'''Description:''' The old kingdom of Wesnoth has fallen before barbarian hordes. The occupying barbarians are on the brink of civil war, the seeds of Wesnothian rebellion are kept alive by old legends, while bandits and Khalifate mercenaries roam the land. Can Gawen Hagarthen unite these disparate factions against a common foe?<br />
Note: This campaign contains mature themes, some of which may be unsuitable for children.<br />
<br />
'''Version: ''' 1.2.15<br />
<br />
'''Requirements:''' Requires BfW 1.10. In addition, you have to install Era Khalifate add-on; the Akladian Music package is optional<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle<br />
<br />
'''Faction/Era:''' Akladians, Khalifate<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=6486<br />
<br />
'''Note:''' (Pyrophorus) Certainly one of the most mature and well designed campaign in add-ons. A must.<br />
<br />
''' [http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#A_New_Order Players´ Review]'''<br />
<br />
<br />
=== Antar, Son of Rheor ===<br />
<br />
''This is the story about a young Lord and his first mission; sent by his father the young Lord Antar has to relieve his neighbours; he has to convince the Elves and Dwarves to ally him; he has to fight against hordes of Orcs and Endless Undead; and finally he has to defeat Mal Kazur, the mastermind who is behind all the evil.''<br />
<br />
'''Author:''' Adamant14<br />
<br />
'''Status:''' WIP<br />
<br />
'''Length:''' 9 playable scenarios / 1 cutscene<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Loyalists and Elves (feat. fencer as main hero + various allies)<br />
<br />
'''Version:''' 0.9.9<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36075<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Antar.2C_Son_of_Rheor Players´ Review]'''<br />
<br />
<br />
=== A Story of the Northlands ===<br />
<br />
''A story of life and death in a remote village of the Northlands. Your village has been overrun by an orcish raid. You fight for its freedom while you wait for help to arrive.''<br />
<br />
'''Author:''' zepko<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 10 playable scenarios + 1 dialogue-only<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default + additions: you play with a custom faction of outlaws and with a custom party of loyalist knights.<br />
<br />
'''[http://units.wesnoth.org/1.10/A_Story_of_the_Northlands/en_US/A_Story_of_the_Northlands.html Custom Units]'''<br />
<br />
'''Version:''' 1.0.0<br />
<br />
<br />
=== A Vision Blinded ===<br />
<br />
''Defend the northern forest against what appeared like a routine orcish raid, and unravel the greater conspiracies that lie below its waves.''<br />
<br />
'''Author:''' LemonTea<br />
<br />
'''Maintainer:''' AxalaraFlame<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 13 playable scenarios + 1 dialogue-only<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Elves (+ Trolls, Outlaws)<br />
<br />
'''[http://units.wesnoth.org/1.10/A_Vision_Blinded/en_US/A_Vision_Blinded.html Custom units]'''<br />
<br />
'''Version:''' 0.6.9<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=23463&hilit=a+vision+blinded<br />
<br />
<br />
=== Bad Moon Rising ===<br />
<br />
''An expedition to gather treasure from the cold north sets off compounding disaster.''<br />
<br />
'''Author:''' Doofus-01<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 20 scenarios<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Archaic Era<br />
<br />
'''Version:''' 1.4.4.a<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=31348<br />
<br />
<br />
=== Battle Against Time ===<br />
<br />
''Rescue fellow orcish warchief before he is executed. (This is not a normal campaign. It is experiment with carryover system. You will start with defined number of turns and gold. You will only have that many turns to play through the whole campaign. There is no finish bonus and gold carryover is always 100%.)''<br />
<br />
'''Author:''' Wonderboy<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 4 playable scenarios + 1 prologue scenario<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default: Orcs<br />
<br />
'''Version:''' 1.0.0<br />
<br />
'''Forum:''' http://wesnoth.org/forum/viewtopic.php?f=8&t=27319<br />
<br />
<br />
=== Besieged Druids ===<br />
<br />
''A elvish school for druids comes under attack by goblins. It seems more than just a routine raid; is there something more sinister behind this attack? - In Beseiged Druids, you control Eärendil, the surviving teacher at the school, and the many and varied initiates. Not all of these are ordinary students; many have been experimenting with other forms of magic, while others are simply overachievers in some area of study. Unfortunately, they are not especially good at combat, at least initially. Together with a very small contingent of surviving guards, it is up to these students to save the island of Aleron from disaster.''<br />
<br />
'''Author:''' Celtic Minstrel<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 9 scenarios<br />
<br />
'''Difficulty:''' Unbalanced<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Elves<br />
<br />
'''[http://units.wesnoth.org/1.10/DruidSiege/en_US/celmin-druid-siege.html Custom units]'''<br />
<br />
'''Version:''' 1<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37342<br />
<br />
<br />
=== Birth of a Lich ===<br />
<br />
''This is the life story of the dreaded lich Malifor, his struggle as a mage outcast, the orcish conquest of the northlands and his transformation to quench the thirst for revenge''<br />
<br />
'''Author:''' chak_abhi<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 12 playable scenarios / 2 dialogue only<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle, Dungeon<br />
<br />
'''Faction/Era:''' Human outlaws, dwarves, undead<br />
<br />
'''[http://units.wesnoth.org/1.10/Birth_of_a_Lich/en_US/Birth_of_a_Lich.html Custom Units]<br />
<br />
'''Version:''' 1.0.3<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37057<br />
<br />
<br />
=== Bitter Revenge===<br />
<br />
''Amidst the strife and turmoil of the first Dark Age of Wesnoth, a time of transient monarchies and conspiracies against the Crown, the boy Darith witnesses the murder of his father by a general of Wesnoth. Follow Darith's quest for retribution in this treacherous tale of betrayal, deceit, love, remorse, and vengeance.''<br />
<br />
'''Author:''' Wonderboy<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 11 playable scenarios + 4 dialogue only<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default (mostly outlaws and undead, custom units)<br />
<br />
'''Version:''' 1.1.0<br />
<br />
'''Forum:''' http://wesnoth.org/forum/viewtopic.php?f=8&t=26699<br />
<br />
<br />
=== Cavanagh The Conqueror ===<br />
<br />
''This is the tale of Cavanagh Orc-Foundling, who was blessed by the gods to conquer and unite all of the Great Continent. Orcs and elves, gods and men, queens and sorcerers populate this epic tale of revenge and redemption.''<br />
<br />
'''Author:''' TheEmptyLord (Programming, Map-making, Editing), Scott_Free(Story)<br />
<br />
'''Status:''' WIP<br />
<br />
'''Length:''' 10 Playable Scenarios so far<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, limited RPG, limited Large Battle<br />
<br />
'''Faction/Era:''' Default (Units from Northerners, Outlaws, Loyalists as well as other factions interspersed. Several custom units.)<br />
<br />
'''Version:''' 0.1.2<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=35927<br />
<br />
<br />
=== Cities of the Frontier ===<br />
<br />
''Settle a new town in the wilds north of the Great River.''<br />
<br />
''This campaign makes several changes to the standard Wesnoth game mechanics, and focuses on city-building and gold management.''<br />
<br />
'''Author:''' esci<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' Not fixed, approximately 6-10 seasons of 36 turns each<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Simulation, Survival<br />
<br />
'''Faction/Era:''' Default, Loyalist<br />
<br />
'''[http://units.wesnoth.org/1.10/Cities_of_the_Frontier/en_US/Cities_of_the_Frontier.html Custom units]'''<br />
<br />
'''Version:''' 0.5.1<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36004<br />
<br />
<br />
=== Considerate Dead ===<br />
<br />
''As the wind goes on and on, people discover necromancer aren't always bad. Made by tribes45 - No scenarios are done, 4 playable out of ??.''<br />
<br />
'''Author:''' tribes45 aka tribes55<br />
<br />
'''Status:''' Incomplete, unbalanced, abandoned<br />
<br />
'''Length:''' 5 scenarios<br />
<br />
'''Difficulty:''' Unbalanced<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default<br />
<br />
'''Version:''' .009<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36522<br />
<br />
<br />
=== Count Kromire ===<br />
<br />
''You are the blood son of a vampire lord, however when the might of the celestial crusades comes knocking, and your father is slain, you flee your lands. However you intend to return, to restore the lands of Kromire to the Kromires, to avenge your father, and most importantly, to make sure that no celestial ever dares come into your mountains again.''<br />
<br />
'''Author:''' Velensk<br />
<br />
'''Maintainer:''' currently none<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 9 scenarios<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Era of Myths, Vampires<br />
<br />
'''Version:''' 1.3.2<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=21560<br />
<br />
<br />
=== Elvish Dynasty RPG ===<br />
<br />
''You are the new ruler of an elvish kingdom! Can you lead your people to glory? This campaign is highly randomized so it will be different every time you play!''<br />
<br />
''Sequel to Ooze Mini-Campaign''<br />
<br />
'''Author:''' spencelack<br />
<br />
'''Maintainer:''' Wesbane<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 10 years, in each year choice between dialogue and fighting scenario (selected out of a large pool of possible scenarios)<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' RPG, Skirmish<br />
<br />
'''Faction/Era:''' Default, Elves<br />
<br />
'''Version:''' 0.9.9b<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=28627<br />
<br />
<br />
=== Fall of Silvium ===<br />
<br />
''You are Caius Regilius, Tribune of the province of Silvia, located in the northmost reaches of the Lavinian Empire at the height of its power. But the Empire has overextended itself, The city of Silvium lies seperated from the rest of the Empire by the mountains of Arendia, and is sandwiched between the Marauders and the Sidhe... war is inevitable, and the province of Silvia will almost certainly fall.''<br />
<br />
'''Author:''' turin<br />
<br />
'''Maintainer:''' UnwiseOwl<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 8 scenarios<br />
<br />
'''Difficulty:''' Medium<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Imperial Era, Lavinian Legion.<br />
<br />
'''Version:''' 0.6<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=31&t=24356<br />
<br />
'''Note:''' The final level of this campaign is not supposed to be winnable. It's a final blaze of glory and chance to use all your high-powered units, but to 'win' the campaign, you must lose...the ending is similar to a certain mainline campaign, but predates it.<br />
<br />
<br />
=== Fate of a Princess ===<br />
<br />
''Part I: Baldres, a notorious robber baron, flees Wesnoth with his followers and sets off into the northlands to evade the king's justice. The baron's deeds and misdeeds are to change the balance of power between orcs and non-orcs throughout the northlands, and will carry consequences long after his eventual death.''<br />
<br />
''Part II: The Greenwood elves face a crisis which demands the return of the queen's estranged half-elven half-sister, Baldres' daughter. Two brave young elves must make a perilous journey to find her and bring her back to her former home. If they fail, the whole northlands will be engulfed in war with the resurgent orcs...''<br />
<br />
'''Author:''' SkyOne, mich, simonsmith<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 26-29 scenarios (some dialogue-only), 2 parts<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Dungeon<br />
<br />
'''Faction/Era:''' Default with additions. You play two different, unique cross-faction combinations in each part.<br />
<br />
'''[http://units.wesnoth.org/1.10/Fate_of_a_Princess/en_US/Fate_of_a_Princess.html Custom units]'''<br />
<br />
'''Version:''' 0.9.17<br />
<br />
'''Required Wesnoth version:''' 1.9.12 or later<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=26327<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Fate_of_a_princess Players´ Review]'''<br />
<br />
<br />
=== Forgotten Kingdom ===<br />
<br />
''Help Orlog, a troll chieftan, lead his people to safety in the underground and discover an ancient power long forgotten.''<br />
<br />
'''Author:''' Limabean<br />
<br />
'''Maintainer:''' Chrysophylax<br />
<br />
'''Status:''' Incomplete ( but all scenarios playable and balanced )<br />
<br />
'''Length:''' 9 playable scenarios + 1 dialogue-only<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Goblins, Trolls<br />
<br />
'''[http://units.wesnoth.org/1.10/Forgotten_Kingdom/en_US/Forgotten_Kingdom.html Custom units]'''<br />
<br />
'''Version:''' 0.1.7<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=23483<br />
<br />
'''Note:''' (Adamant14) This campaign includes a custom Troll line. A good campaign, I hope Limabean and/or Chrysophylax will finish it.<br />
<br />
<br />
=== Forward they Cried ===<br />
<br />
''You are the leader of an advanced detachment that has been tasked with capturing a bridgehead while the main army prepares to attack. It should be a simple enough assignment.''<br />
<br />
'''Author:''' Glowing Fish<br />
<br />
'''Maintainer:''' Lord-Knightmare <br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 1 scenario ( rather a single scenario than a campaign )<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default Loyalists<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=23656&p=350126&hilit=forward+they+cried#p350126<br />
<br />
'''Version:''' 1.0.0<br />
<br />
'''Note:''' (Adamant14) Only a single scenario, but a great scenario.<br />
(UnwiseOwl) You wouldn't want to stop thinking for a turn, and it's good for the first few turns, but this one leaves me wanting more.<br />
<br />
<br />
=== Galuldur's First Journey ===<br />
<br />
''While the belligerence of orcs is nothing new, their intensifying attacks on a fledgling colony of elves in Pindir Forest begin to show signs of a deeper malice, forcing Galuldur, the young son of the colony's adventurous founder Galur, to venture out of his forest's friendly trees in search of help. His simple errand quickly turns into a frantic quest to unearth the roots of the mysterious evil threatening his people. As you lead him through unknown lands, Galuldur, forced to match wits with unexpected adversaries at nearly every turn in a desperate attempt to save his world, quickly learns that the world is neither a friendly nor a simple place.''<br />
<br />
'''Author:''' mattsc<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 8-9 scenarios<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Elves<br />
<br />
'''[http://units.wesnoth.org/1.10/Galuldur/en_US/Galuldur.html Custom units]'''<br />
<br />
'''Version:''' 1.1.1<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=31895<br />
<br />
<br />
=== Grnk the Mighty ===<br />
<br />
''All his life, puny little goblin Grnk the Frail had been dreaming about leaving the orcs and starting a better life. When he finally arrives in the human town of Shmaltupp, he realizes that the world is not as black and white as he had imagined. He also discovers that he is no ordinary goblin. Follow Grnk the Frail on his path to becoming Grnk the Mighty.''<br />
<br />
'''Author:''' mattsc<br />
<br />
'''Status:''' Part I complete<br />
<br />
'''Length:''' 13 scenarios<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish, RPG<br />
<br />
'''Faction/Era:''' Default, changing (no standard army building gameplay)<br />
<br />
'''[http://units.wesnoth.org/1.10/Grnk/en_US/Grnk.html Custom units]'''<br />
<br />
'''Version:''' 1.0.5<br />
<br />
'''Required Wesnoth version:''' 1.9.5 or later<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=34970<br />
<br />
<br />
=== Invasion from the Unknown ===<br />
<br />
''Episode I - Seeking the Light: Long after the Fall, the last forest elves are forced to abandon their safe valley, and find themselves resorting to the dark means of necromancy in order to survive the perils and challenges of this new harsh world. May they finally free the Great Continent from its chaos, or perish in the foolish attempt of restoring peace and life to the lands.''<br />
<br />
''Episode II - Armageddon: As the shadow of Chaos covers the entire continent, an assorted group of foolish heroes prepares a counter-attack to the Empire, with one unique goal in their minds: defeat the evil Emperor, whoever it is. Lead these courageous living and non-living warriors to victory, and rediscover lost secrets of the history.''<br />
<br />
'''Author:''' shadowmaster <br />
<br />
'''Maintainer:''' Espreon<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 26 scenarios in two episodes<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Dungeon, Boss battle<br />
<br />
'''Faction/Era:''' Unique. You play Elves and Undead throughout the campaign + in the 2nd part Northerners and Aragwaithi.<br />
<br />
'''Version:''' 1.90.6<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Invasion_from_the_Unknown Players´ Review]'''<br />
<br />
'''Note:''' (taptap) Despite its acknowledged flaws (generic hero, plot holes, deus ex machina moments, gameplay issues in the 2nd part) this is undoubtedly the most iconic campaign in UMC. It single-handedly redefines the elvish history and sketches a cosmology for the ages after the fall. With the Chaos empire and its various allies it introduces an era worth of factions to single-player play. At the same time it features some of the most beautiful maps in Wesnoth and stunning art on par with mainline campaigns.<br />
<br />
<br />
=== Invasion of Eliador ===<br />
<br />
''A peaceful island is about to be invaded by unknadd-ons foes travelling towards the eastern shore. It is up to a family of outlaws to warn the island's inhabitants before it's too late.''<br />
<br />
'''Author:''' Sam M. (Genosuke)<br />
<br />
'''Maintainer:''' trewe<br />
<br />
'''Version:''' 1.0.4<br />
<br />
'''Style:''' RPG, Skirmish, Puzzle<br />
<br />
'''Length:''' 10 scenarios + epilogue<br />
<br />
'''Difficulty:''' Easy<br />
<br />
'''Status:''' Complete<br />
<br />
'''Faction:''' Default (outlaws)<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=6556<br />
<br />
'''Wiki:''' [[Invasion_of_Eliador]]<br />
<br />
<br />
=== Langrisser Sample Campaign ===<br />
<br />
''The Imperial Knights of the Rayguard Empire have disrupted the peace of the village that was Hein's hometown, seeking only a girl named Liana. Fight to rescue Liana.''<br />
<br />
'''Author:''' Morath<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 1 playable scenario<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Elves<br />
<br />
'''Version:''' 0.1.0.5<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36417&hilit=Langrisser<br />
<br />
'''Wikipedia:''' [http://en.wikipedia.org/wiki/Langrisser What is Langrisser]<br />
<br />
'''Note:''' (Adamant14) Single scenario, different from usual Wesnoth behaviour.<br />
<br />
<br />
=== Legend of Far North ===<br />
<br />
''The tale of the legendary Black Eye Karun,depicting his rise to power, his successes and his brutal assassination.'<br />
<br />
'''Author:''' chak_abhi<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 16 playable scenarios / 1 dialogue only,1 cutscene<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle<br />
<br />
'''Faction/Era:''' Orcs, Trolls, Saurians, Nagas<br />
<br />
'''[http://units.wesnoth.org/1.10/Legend_of_Far_North/en_US/Legend_of_Far_North.html Custom Units]'''<br />
<br />
'''Version:''' 1.0.2<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=34769<br />
<br />
<br />
=== Legend of the Invincibles ===<br />
<br />
'''''Part I: Shrouded in Darkness''' (5 chapters, 90 scenarios) - A pair of heroes, after stopping an orcish thread, are outcast into caves, where they have no other choice than to become liches in order to survive. They preserved their original appearance and moral principles, and fight in various skirmishes against evil (although using evil methods sometimes), until the Fall, when they are buried alive under the ashes of the third sun.''<br />
<br />
'''''Part II: Into the Light''' (4 chapters, 96 scenarios at the moment) - Long after the Fall, the lich heroes awaken. Searching for more power, they manage to resurrect themselves as living beings, but this time more powerful and ridden of the evil within. But the evil from inside them did not cease to exist, and started a campaign to conquer the world. Stopping the campaign caused an even worse disaster...''<br />
<br />
'''Author:''' Dugi <br />
<br />
'''Status:''' WiP (but Part I might be considered complete)<br />
<br />
'''Length:''' 185 (+7 talk-only) scenarios at the moment<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' mostly Skirmish and Dungeon (all other styles are present as well, but less frequently)<br />
<br />
'''Faction/Era:''' Elves, Loyalists, Undead, Dwarves; but they advance past their usual maximum level<br />
<br />
'''Version:''' 2.5.0<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Legends_of_the_Invincibles Players´ Review]'''<br />
<br />
'''Note:''' The most unique feature of this campaign is its RPG-like unit development system, enemies drop items units can use, leaders are stronger than most usual units and all units get AMLA (after maximum level advancement) after reaching their maximum level (that is also increased by a load of additional level 4 units).<br />
<br />
<br />
=== Panther Lord ===<br />
<br />
''The Imperialists ambitions of pushing into the Sea States have been repeatedly thwarted and now they turn their attentions elsewhere. You are an outcast Darklander now living as a mercenary in the Sea States and the rumors you hear indicate that they will be coming to your people. Though an outcast you do not wish to see them subjugated. The spirit whose friendship caused you to be an outcast has a plan that might allow you to save them.''<br />
<br />
'''Author:''' Velensk <br />
<br />
'''Maintainer:''' Lavender<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 14 scenarios<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Era of Four Moons, Darklanders (+ a wide variety of mercenaries)<br />
<br />
'''Version:''' 1.0.2<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=34318<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Panther_Lord Players´ Review]'''<br />
<br />
<br />
=== Random Campaign ===<br />
<br />
''Gain experience playing the Default Era faction of your choice in a campaign setting''<br />
<br />
'''Author:''' SigurdFireDragon<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 7 playable scenarios<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Age of Heroes, & Era of Legends<br />
<br />
'''Version:''' 1.0.0<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=32922<br />
<br />
'''Note:''' (Author) A 4 scenario version is under the multiplayer button, which lets you choose any era.<br />
Intended for players to gain practice with a faction and learn sound strategies using faction specific adjustments against random factions from the chosen era.<br />
<br />
<br />
=== Rebellion in the North ===<br />
<br />
''A great orcish uprising tends to destabilise the Northlands. As the future Lord Protector of the Northern Alliance you have to crush the rebellion and establish peace again."<br />
<br />
'''Author:''' chak_abhi<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 24 playable scenarios / 3 dialogue only,2 cutscenes<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle<br />
<br />
'''Faction/Era:''' Loyalists, Dwarves, Gryphons, Merfolk<br />
<br />
'''Version:''' 1.1.12<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=33059<br />
<br />
<br />
=== Return of the Monster ===<br />
<br />
''It was time for Amailoss, born from the naga queen's last egg, to leave home. Time for him to grow into a leader in his own right, and eventually become the guardian and leader of another naga city. But along the way, he became friends with an unusual mud-crawler, they met a strange young monster, discovered that a spirit had escaped from an orc prison, and the mystery of that spirit became a grave challenge for Amailoss and the many races in the region....''<br />
<br />
''A naga campaign, involving elves, orcs, saurians, turtle-like races, and some monsters.''<br />
<br />
'''Author:''' SkyOne<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 16 playable, 2 dialog scenarios<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Dungeon<br />
<br />
'''Faction/Era:''' Default with additions. You play a custom naga faction and carapaces (a turtle-like race).<br />
<br />
'''[http://units.wesnoth.org/1.10/Return_of_the_Monster/en_US/Return_of_the_Monster.html Custom units]'''<br />
<br />
'''Version:''' 0.7.1<br />
<br />
'''Required Wesnoth version:''' 1.10.x<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36438<br />
<br />
<br />
=== Return to Noelren ===<br />
<br />
'''Status:''' Complete.<br />
<br />
'''Length:''' 26 scenarios + 7 cut scenes<br />
<br />
'''Author:''' Pyrophorus<br />
<br />
'''Description:''' ''A story in the first Dark Age of Wesnoth. See how various heroes stick together to shun the threat of black magics, restore the secret kingdom of Noelren and install Garard I on the throne of Wesnoth. This campaign features complex scenarios, unusual objectives and units, emphasizing more on story and adventures than hardcore fighting.''<br />
<br />
'''Version: ''' 0.7.6<br />
<br />
'''Requirements:''' BfW 1.10 (not tested on 1.11)<br />
<br />
'''Difficulty:''' Easy, unbalanced<br />
<br />
'''Style:''' Skirmish, RPG, Large Battle, Simulation<br />
<br />
'''Faction/Era:''' Default + custom units<br />
<br />
'''[http://units.wesnoth.org/1.10/ReturnToNoelren/en_US/ReturnToNoelren.html Custom Units]'''<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=34685#p501026<br />
<br />
'''Note:''' (Adamant14) I never saw so much fantastic and new ideas in one single UMC, wow!<br />
<br />
<br />
=== Return to Ruins ===<br />
<br />
''The humble farmers of Vertegris are summoned by Erik the General of Weldyn to put an end to an orcish raiding party. If they knew what would befall their former home... They never would have left. This is a relatively short campaign with 8 scenarios, It is still undergoing changes.''<br />
<br />
'''Author:''' Jeff Stevens (Ulfsark)<br />
<br />
'''Composer:''' Paul Fredericks (paulfredericksmusic.com)<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 7 scenarios + 1 dialogue-only<br />
<br />
'''Difficulty:''' Easy,Normal,Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default,(Loyalists, Outlaws)<br />
<br />
'''Version:''' 0.5.1<br />
<br />
'''Required Wesnoth version:''' 1.10.x <br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37790&sid=9059f18497cda1219f42a626544d0ffd&p=540646#p540646<br />
<br />
'''Note:''' (Adamant14) You play a short campaign with just a few units. Playable in a few hours, nevertheless it is fun to play.<br />
<br />
<br />
=== Salt Wars ===<br />
<br />
''Introductory campaign for the Era of Four Moons.''<br />
<br />
''As an officer of one of the Sea States you must defend your organization from aggressive rivals.''<br />
<br />
'''Author:''' Velensk <br />
<br />
'''Maintainer:''' Lavender<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 5 scenarios<br />
<br />
'''Difficulty:''' Easy<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Era of Four Moons, Sea States<br />
<br />
'''Version:''' 0.2.1<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=31498<br />
<br />
<br />
=== Saving Elensefar ===<br />
<br />
''Meneldur, elvish mariner of Elensefar, is driven to sea by the same orcs who attacked the city. He must gather an army willing to fight for him to regain Elensefar, his adopted homeland.''<br />
<br />
'''Author:''' Turin<br />
<br />
'''Maintainer:''' trewe<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 1 year (around 12 scenarios)<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, RPG, Simulation<br />
<br />
'''Version:''' 1.5.2<br />
<br />
'''Faction:''' Default Era<br />
<br />
'''Forum:''' http://wesnoth.org/forum/viewtopic.php?t=3072&start=0<br />
<br />
'''Wiki:''' [[SeafaringCampaign]]<br />
<br />
'''Note:''' Labeled as Expert, recruit list changes in all scenarios.<br />
<br />
<br />
=== Shameless Crossover Excuse ===<br />
<br />
''Fugitive dark sorcerer Gwiti Ha'atel discovers he has the power to mess with Wesnoth's continuity. His quest for revenge on the NPCs who have used his portraits will lead him through perils untold and in-jokes unnumbered, but shall pale before the horror he finds at his quest's end.''<br />
<br />
'''Author:''' Orcish Shyde, Mountain_King<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 9 scenarios<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Version:''' 1.1.0<br />
<br />
'''Faction:''' Undead<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=32016&start=15<br />
<br />
<br />
=== Swamplings ===<br />
<br />
''Banished by Yushnak the Ponderer, a tribe of lowly swamp goblins endure in the deadly mire of Pogo Bog. Four centuries before the founding of Wesnoth, this is the story of the goblins' struggle against the intrigues and betrayals of the greater races, and the rise of the first wolf rider.''<br />
<br />
'''Author:''' John Rawlins (boru)<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 14 scenarios<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Version:''' 1.1.7n<br />
<br />
'''Faction:''' Goblins<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=29784<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Swamplings Players´ Review]'''<br />
<br />
<br />
=== Talentless Mage===<br />
<br />
''Humorous and silly campaign about mage apprentice who has managed to learn only one simple spell in thirty years.''<br />
<br />
'''Author:''' Wonderboy<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 11 playable scenarios + 3 dialogue scenarios<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Noob Faction<br />
<br />
'''Version:''' 1.1.0<br />
<br />
'''Forum:''' http://wesnoth.org/forum/viewtopic.php?f=8&t=27608]<br />
<br />
'''[http://wiki.wesnoth.org/index.php?title=Guide_to_UMC_Campaigns/Players_Reviews&action=submit#Talentless_Mage Players´ Review]'''<br />
<br />
<br />
=== The Dark Alliance===<br />
<br />
''Prince Terhar lived two years with elves. Little did he expect what would happen when he returned back to Weldyn.''<br />
<br />
'''Author:''' Wonderboy<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 11 or 10 playable scenarios depending on the branch you take (+ 5 dialogue scenarios)<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default: Recruit list changes in almost every scenario<br />
<br />
'''Version:''' 1.0.3"<br />
<br />
'''Forum:''' http://wesnoth.org/forum/viewtopic.php?f=8&t=26924<br />
<br />
<br />
=== The Dark Hordes ===<br />
<br />
'''Status:''' Incomplete/WIP<br />
<br />
'''Length:''' 11/?<br />
<br />
'''Author:''' Circon<br />
<br />
'''Maintainer:''' Various<br />
<br />
'''Description:''' Lead fugitive dark sorcerer Gwiti Ha’atel to mastery of the undead hordes.<br />
<br />
'''Version: '''<br />
<br />
'''Requirements:'''<br />
<br />
'''Difficulty:'''<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default undead<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Dark_Hordes/en_US/The_Dark_Hordes_1.html Custom Units]'''<br />
<br />
'''Walkthrough:''' [[TheDarkHordes]]<br />
<br />
'''Forum:''' [[http://forums.wesnoth.org/viewtopic.php?f=8&t=16576&]]<br />
<br />
<br />
=== The Devil's Flute ===<br />
<br />
'''Status:''' Complete, unmaintained<br />
<br />
'''Length:''' 10 scenarios<br />
<br />
'''Author:''' lipk<br />
<br />
'''Description:''' Creona, the well-known assassin, gets a strange job from a strange person. So, in fact, it's no surprise that things take a strange turn...<br />
<br />
'''Version:''' 0.1.4c<br />
<br />
'''Difficulty:''' Unbalanced<br />
<br />
'''Style:''' Skirmish, Minigames<br />
<br />
'''Faction/Era:''' Outlaws<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36044<br />
<br />
<br />
=== The Earth's Gut ===<br />
<br />
''The year is 515YW. You are the young dwarven leader Hamel. Your tribe in the caves of Knalga is under pressure from its enemies, and resources are growing scarce. In order to forge the weapons required to resist your enemies, you must set forth and collect what ores and minerals remain.''<br />
<br />
'''Author:''' Anonymissimus<br />
<br />
'''Maintainer:''' Anonymissimus<br />
<br />
'''Status:''' WIP, story is unfinished (I didn't add any scenario since long, but that doesn't mean nothing is added to the campaign. My addons tend to be in good shape and bug-free which means also WIP as I'm updating it since 1.4 days.)<br />
<br />
'''Length:''' 23 scenarios, 5 of which are cutscene only, some others have changing objectives<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Dungeon, Skirmish<br />
<br />
'''Faction/Era:''' Default, dwarves, woses, mages, a few custom units<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Earths_Gut/en_US/the_earths_gut.html Custom units]'''<br />
<br />
'''Version:''' 0.2.14<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=26800<br />
<br />
'''Note:''' This campaign is a "Dwarvish dungeon crawler" (It currently contains about as many surface scenarios as underground though.) and is intended to be challenging for experienced players on hard whilst suitably easy on easy. I develop the campaign with the wesnoth development version and I advise to play with that, but it is intended to work almost equally well with the stable wesnoth version (except for features only available in the wesnoth development version).<br />
<br />
<br />
=== The Epic of Vaniyera ===<br />
<br />
''The expansionist Lavinian Legion, led by the Imperator himself, has invaded the northern forests of the Sidhe, or Wild Elves. It is up to Leithan the Thunderblade and his advisor Vaniyera to push its armies back where they came from...''<br />
<br />
'''Author:''' oreb, turin<br />
<br />
'''Maintainer:''' UnwiseOwl<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 6 scenarios<br />
<br />
'''Difficulty:''' Hard (Don't be fooled by "novice level" in the campaign description, this one is very hard.) <br />
<br />
'''Note:''' (Maintainer) Working on this issue, the next release (due at the end of November, hah!) should bring easy difficulty back to the level of a reasonable introduction to the IE, while the hard difficulty will also become slightly easier. With any luck, this will be the last release before version 1.0 of the campaign].<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Imperial Era, Sidhe.<br />
<br />
'''Version:''' 0.9.0<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=19490<br />
<br />
<br />
=== The Fall of Wesnoth ===<br />
<br />
''As the beloved human empire of Wesnoth becomes lazy and arrogant in its peaceful state of happiness, Emperor Dantair demands the creation of another sun in a bid to destroy all evil. Or is it all for a different purpose? A man named Alitar sees it that way, and now he must survive the most evil inhabited lands if he is to stop chaos from rising, and Wesnoth from falling... This is the story of The Fall of Wesnoth.''<br />
<br />
'''Author:''' Pewskeepski<br />
<br />
'''Status:''' 1st part complete, 2nd WIP.<br />
<br />
'''Length:''' 10 playable scenarios<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Outlaws<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Fall_of_Wesnoth/en_US/The_Fall_of_Wesnoth-1.html Custom units]'''<br />
<br />
'''Version:''' 1.0.8<br />
<br />
<br />
=== The Founding of Borstep ===<br />
<br />
''The chieftain of your tribe has become decadent and weak. Take over, and lead your people to a better home--whether it is already occupied or not. The Northlands in year 9W are a barbaric place, but anyone who stands in your way will learn the power of orcs!'' <br />
<br />
'''Author:''' Beetlenaut<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 10 and 1 dialogue only<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Northerners<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Founding_of_Borstep/en_US/The_Founding_of_Borstep.html Custom units]'''<br />
<br />
'''Version:''' 1.1.1b<br />
<br />
'''Note:''' (Kanzil) I find the protagonist hard to sympathise with. Also, most scenarios contain interesting twists. For example, in one, each time you killed a boar it gives you extra health.<br />
<br />
'''Note:''' (beetlenaut--author) In most Orcish campaigns the leader is heroic or just wants peace. Krag-Ubor wants plunder and battle like all enemy Orcs in other campaigns. I '''hope''' you don't sympathize too strongly, but I don't think you need to in order to enjoy the game play.<br />
<br />
<br />
=== The Library of Kratemaqht ===<br />
<br />
''An ancient story from the old continent.''<br />
<br />
'''Author:''' Rich Marinaccio (cephalo)<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 17 scenarios<br />
<br />
'''Difficulty:''' Unbalanced (some scenarios are Easy - some rather Hard) <br />
<br />
'''Style:''' Skirmish, RPG<br />
<br />
'''Faction/Era:''' Loyalists and custom units.<br />
<br />
'''[http://units.wesnoth.org/1.10/Library_Of_Kratemaqht/en_US/The_Library_Of_Kratemaqht.html Custom units]'''<br />
<br />
'''Version:''' 1.0.0<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37798<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#The_Library_of_Kratemaqht Players´ Review]'''<br />
<br />
'''Notes:''' (Adamant14) This campaign has a thought-out story, shows a great love for detail;<br />
It includes a great custom Dragon, some brilliant custom images (fire, burning houses, burning forest) that makes the scenery / maps look very nice.<br />
<br />
<br />
=== The Roar of the Woses ===<br />
<br />
''When the construction of a dam threatens the existence of her home, Kylix is forced on a journey to stop it.''<br />
<br />
'''Author:''' Alarantalara<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 10-11 scenarios + 1 dialogue-only<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default with Additions (primarily Saurians, Nagas, Woses)<br />
<br />
'''Version:''' 1.2.7<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=29830<br />
<br />
'''Note:''' (author) Potentially unbalanced on Hard difficulty due to experiments with non-standard ways to increase difficulty. This issue does not exist on the lower difficulty levels.<br />
<br />
<br />
=== The Three Elves ===<br />
<br />
''Three elves have just begun their adventure in the northern swampland. Will they become heroes or will they be responsible for another undead expansion?''<br />
<br />
'''Author:''' Stanislav Hoferek<br />
<br />
'''Maintainer:''' trewe<br />
<br />
'''Version:''' 0.9<br />
<br />
'''Status:''' Complete<br />
<br />
'''Difficulty:''' Easy<br />
<br />
'''Length:''' 8 scenarios + 2 dialogue<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction:''' Default (Elves)<br />
<br />
'''Forum:''' (does it have one?)<br />
<br />
<br />
=== The Sojournings of Grog ===<br />
<br />
''Grog (as starred in Under the Burning Suns) goes home.''<br />
<br />
'''Author:''' Peter Christopher, Thomas Hockings <br />
<br />
'''Maintainer:''' Elvish_Hunter<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 18 playable scenarios in 2 parts<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Dungeon, Large Battle<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Sojournings_of_Grog/en_US/The_Sojournings_of_Grog.html Custom units]'''<br />
<br />
'''Faction/Era:''' Default. Most of the time you play trolls and some desert elves accompanying Grog.<br />
<br />
'''Version:''' 3.0.1<br />
<br />
<br />
=== The Unstoppable Legion ===<br />
<br />
''Horseback campaign. The kingdom of Suveran, far away from Wesnoth, is under attack. Only Deuterus, a Great Druid, knows their weakness and only Viktor, a young noble, dares go on the quest to stop them.''<br />
<br />
'''Author:''' Chris Neville-Smith (Chris NS)<br />
<br />
'''Maintainer:''' Chris Neville-Smith (Chris NS)<br />
<br />
'''Status:''' WIP<br />
<br />
'''Length:''' Currently 15 playable sceanrios, including a fork of three paths near the beginning, and another fork of two paths later on.<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Mainly Skirmish<br />
<br />
'''[http://units.wesnoth.org/1.10/The_Unstoppable_Legion/en_US/The_Unstoppable_Legion.html Custom units]'''<br />
<br />
'''Faction/Era:''' Play mounted units, including expanded Cavalryman line, and completely new Bowrider line. Joined later by Dwarves. Main enemies are the dark fighters and dark cultists.<br />
<br />
'''Version:''' 0.8.7<br />
<br />
<br />
=== The White Troll ===<br />
<br />
''The story of a white troll whelp with strange magic powers, who is raised in an elvish village.''<br />
<br />
'''Author:''' Wesnoth Italian Forum<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 8 scenarios<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default: you play with elves and trolls. Also features custom units with special advancements and abilities.<br />
<br />
'''[http://units.wesnoth.org/1.10/White_Troll/en_US/white_troll.html Custom Units]'''<br />
<br />
'''Version:''' 0.7.5<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=38828<br />
<br />
<br />
=== To Lands Unknown ===<br />
<br />
''This is the story of Mehir, the Summoner, and his journey to lands unknown.''<br />
<br />
'''Author:''' inferno8<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 20 scenarios, 4 dialogue only<br />
<br />
'''Difficulty:''' Intermediate (Era of Magic)<br />
<br />
'''Style''': Skirmish, Dungeon<br />
<br />
'''Era:''' Era of Magic<br />
<br />
'''Version:''' 1.6.0<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=31799<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#To_Lands_Unknown Players´ Review]'''<br />
<br />
<br />
=== Unlikely Alliance ===<br />
<br />
''Play as the members of an alliance between the elves, drakes, and undead after the Fall of Wesnoth.''<br />
<br />
'''Author:''' Creativity<br />
<br />
'''Status:''' Broken ( Abandoned )<br />
<br />
'''Length:''' 2 broken scenarios<br />
<br />
'''Difficulty:''' Unbalanced<br />
<br />
'''Style:''' -<br />
<br />
'''Faction/Era:''' -<br />
<br />
'''Version:''' 0.1<br />
<br />
'''Forum:''' -<br />
<br />
'''Note:''' (Adamant14) Does not work at all. Seems abandoned.<br />
<br />
<br />
=== Up from Slavery ===<br />
<br />
''The Orcei are captives in the imperial city of Lavinium, gladiators performing for the emperor Optus Maximus. All it will take, however, is one orc to lead his people to freedom. The Samnis called Sparxus may be that orc.''<br />
<br />
'''Author:''' turin<br />
<br />
'''Maintainer:''' UnwiseOwl<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 7 scenarios<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Arena (= No recruit, small group gladiator fights)<br />
<br />
'''Faction/Era:''' Imperial Era, Orcei Gladiatores<br />
<br />
'''Version:''' 0.6.0<br />
<br />
'''Note:''' (Maintainer) At some point, I am intending to completely re-work this campaign to be a multi-player campaign, with one side led by Sparxus and one by Gravirivus. If anyone would like to take this on or has ideas for how to accomplish this, let us know. Nevertheless, its playable as a single player campaign now with some nice ideas that could be developed further.]<br />
<br />
<br />
=== Warmaster ===<br />
<br />
''One day the scout of your king brings a mysterious little stone, called Zrai-Stone, back from one of his trips. Soon that stone causes a lot of trouble...''<br />
<br />
'''Author:''' Conkinator<br />
<br />
'''Maintainer:''' trewe<br />
<br />
'''Version:''' 1.3.5<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 16 battle + 2 bonus + 1 epilogue scenarios<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Faction:''' Default (loyalists)<br />
<br />
'''Style:''' Skirmish, Survival<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=15527<br />
<br />
<br />
=== Way of Dragon ===<br />
<br />
''The story of what might happen if a person against his will transform into a dragon...''<br />
<br />
'''Author:''' DrakeDragon<br />
<br />
'''Status:''' Complete <br />
<br />
'''Length:''' 7 playable scenarios + 1 dialogue-only<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish/RPG<br />
<br />
'''Faction/Era:''' Default Loyalists<br />
<br />
'''Version:''' 1.2.0<br />
<br />
'''Forum:''' [http://forums.wesnoth.org/viewtopic.php?f=8&t=37876 Wesnoth Forum] [http://uporoom.ru/index.php/topic,179.0.html Russian Forum]<br />
<br />
'''Note:''' (Adamant14) Promising short campaign, you play with just a few units.<br />
<br />
<br />
<br />
<br />
<br />
== Battle for Wesnoth 1.11.x - development ==<br />
<br />
''Campaigns available in the 1.11.x development version.''<br />
<br />
''Please note: Battle for Wesnoth 1.11.0 features a bug that messes up the selection of difficulty levels.''<br />
<br />
<br />
=== Antar, Son of Rheor ===<br />
<br />
''This is the story about a young Lord and his first mission; sent by his father the young Lord Antar has to relieve his neighbours; he has to convince the Elves and Dwarves to ally him; he has to fight against hordes of Orcs and Endless Undead; and finally he has to defeat Mal Kazur, the mastermind who is behind all the evil.''<br />
<br />
'''Author:''' Adamant14<br />
<br />
'''Status:''' WIP<br />
<br />
'''Length:''' 9 playable scenarios / 1 cutscene <br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default, Loyalists and Elves (feat. fencer as main hero + various allies)<br />
<br />
'''Version:''' 0.9.9<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36075<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Antar.2C_Son_of_Rheor Players´ Review]'''<br />
<br />
'''Note:''' (Adamant14) The campaign did not work with BfW version 1.11.0, or BfW version 1.11.1, so please use BfW version 1.11.2 or later!<br />
<br />
<br />
=== A Song of Fire ===<br />
<br />
''''''Part I: The Last War''' - In a long-forgotten era, at the heart of the Great Continent, an ancestral evil is awakened, threatening to destroy the whole world. Follow young Myra in the war that will alter the future of Irdya and its peoples forever.''<br />
<br />
''''''Part II: Towards the Rising Sun''' - After the vicious Last War, Myra has become the new leader of Aragwaithi and Windsong alike. Albeit young and shaken by many losses, she must steel herself to lead her people through the vast and hostile Hannuk Steppes. However, her journey will take them all farther than in their wildest dreams. Furthermore, Myra must deal with the evil influence of the mysterious red gem she found after the last battle.''<br />
<br />
''''''Part III: Raging Skies''' - The refugees have finally found a new home: families are built, allies are made and, for the first time in years, Myra and her friends know peace. However, when everything seems normal, ambition and thirst for power cause the break out of a continental war. And, amidst this new storm, an old foe rises agan, more powerful than ever. Witness the end of the song of Irdya's first great heroine.''<br />
<br />
'''Author:''' revansurik<br />
<br />
'''Status:''' Complete<br />
<br />
'''Length:''' 36 scenarios<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle<br />
<br />
'''Faction/Era:''' Default+War of Legends<br />
<br />
'''Version:''' 0.3.4<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=38210<br />
<br />
<br />
=== Bad Moon Rising ===<br />
<br />
''An expedition to gather treasure from the cold north sets off compounding disaster.''<br />
<br />
'''Author:''' Doofus-01<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 20 scenarios<br />
<br />
'''Difficulty:''' Hard<br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Archaic Era<br />
<br />
'''Version:''' 1.5.8<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=31348<br />
<br />
<br />
=== Birth of a Lich ===<br />
<br />
''This is the life story of the dreaded lich Malifor, his struggle as a mage outcast, the orcish conquest of the northlands and his transformation to quench the thirst for revenge''<br />
<br />
'''Author:''' chak_abhi<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 12 playable scenarios / 2 dialogue only<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle, Dungeon<br />
<br />
'''Faction/Era:''' Human outlaws, dwarves, undead<br />
<br />
'''[http://units.wesnoth.org/1.10/Birth_of_a_Lich/en_US/Birth_of_a_Lich.html Custom Units]<br />
<br />
'''Version:''' 1.0.3<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37057<br />
<br />
<br />
=== Coming of the Storm ===<br />
<br />
''A new recruit joins the imperial army, eager to change the world and see combat. Little does he realise just how much action he will get and where his journey will take him. ''<br />
<br />
'''Author:''' TrashMan<br />
<br />
'''Status:''' WIP<br />
<br />
'''Length:''' 26 playable scenarios / 4 dialogue only<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle, Dungeon<br />
<br />
'''Faction/Era:''' Default<br />
<br />
'''Version:''' 1.2.1<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=23361<br />
<br />
<br />
=== Legend of Far North ===<br />
<br />
''The tale of the legendary Black Eye Karun,depicting his rise to power, his successes and his brutal assassination.'<br />
<br />
'''Author:''' chak_abhi<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 16 playable scenarios / 1 dialogue only,1 cutscene<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle<br />
<br />
'''Faction/Era:''' Orcs, Trolls, Saurians, Nagas<br />
<br />
'''[http://units.wesnoth.org/1.10/Legend_of_Far_North/en_US/Legend_of_Far_North.html Custom Units]'''<br />
<br />
'''Version:''' 1.0.2<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=34769<br />
<br />
<br />
=== Legend of the Invincibles ===<br />
<br />
'''''Part I: Shrouded in Darkness''' (5 chapters, 90 scenarios) - A pair of heroes, after stopping an orcish thread, are outcast into caves, where they have no other choice than to become liches in order to survive. They preserved their original appearance and moral principles, and fight in various skirmishes against evil (although using evil methods sometimes), until the Fall, when they are buried alive under the ashes of the third sun.''<br />
<br />
'''''Part II: Into the Light''' (4 chapters, 96 scenarios at the moment) - Long after the Fall, the lich heroes awaken. Searching for more power, they manage to resurrect themselves as living beings, but this time more powerful and ridden of the evil within. But the evil from inside them did not cease to exist, and started a campaign to conquer the world. Stopping the campaign caused an even worse disaster...''<br />
<br />
'''Author:''' Dugi <br />
<br />
'''Status:''' WiP (but Part I might be considered complete)<br />
<br />
'''Length:''' 185 (+7 talk-only) scenarios at the moment<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' mostly Skirmish and Dungeon (all other styles are present as well, but less frequently)<br />
<br />
'''Faction/Era:''' Elves, Loyalists, Undead, Dwarves; but they advance past their usual maximum level<br />
<br />
'''Version:''' 2.5.0<br />
<br />
'''[http://wiki.wesnoth.org/Guide_to_UMC_Campaigns/Players_Reviews#Legends_of_the_Invincibles Players´ Review]'''<br />
<br />
'''Note:''' The most unique feature of this campaign is its RPG-like unit development system, enemies drop items units can use, leaders are stronger than most usual units and all units get AMLA (after maximum level advancement) after reaching their maximum level (that is also increased by a load of additional level 4 units).<br />
<br />
<br />
=== Rebellion in the North ===<br />
<br />
''A great orcish uprising tends to destabilise the Northlands. As the future Lord Protector of the Northern Alliance you have to crush the rebellion and establish peace again."<br />
<br />
'''Author:''' chak_abhi<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 24 playable scenarios / 3 dialogue only,2 cutscenes<br />
<br />
'''Difficulty:''' Normal<br />
<br />
'''Style:''' Skirmish, Large Battle<br />
<br />
'''Faction/Era:''' Loyalists, Dwarves, Gryphons, Merfolk<br />
<br />
'''Version:''' 1.1.12<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=33059<br />
<br />
<br />
=== Ruthless ===<br />
<br />
''A bard (an aging criminal) is walking in wasteland. Nothing but two hands in his pockets, and nothing but stones around. Suddenly he sees a knight on errand--a dangerous opponent, especially in broad daylight. The two strangers are soon sitting by the campfire, and the bard is telling a story.<br />
(Beginner level, 10+ fights).''<br />
<br />
'''Author:''' homunculus<br />
<br />
'''Status:''' Finished<br />
<br />
'''Length:''' 12 playable scenarios + 5 cutscene scenarios<br />
<br />
'''Difficulty:''' Normal <br />
<br />
'''Style:''' Skirmish<br />
<br />
'''Faction/Era:''' Default (Orcs)<br />
<br />
'''Version:''' 1.0.4<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=37874<br />
<br />
'''Note:''' (Adamant14) Recommendable campaign, with smart unusual ideas and a good detailed story.<br />
You fight with few units on small but perfect maps. About the difficulty: The author describes his campaign as 'beginner level', but for me the difficulty is rather NORMAL than EASY.<br />
<br />
<br />
=== The Devil's Flute ===<br />
<br />
'''Status:''' Complete, unmaintained<br />
<br />
'''Length:''' 10 scenarios<br />
<br />
'''Author:''' lipk<br />
<br />
'''Description:''' Creona, the well-known assassin, gets a strange job from a strange person. So, in fact, it's no surprise that things take a strange turn...<br />
<br />
'''Version:''' 0.1.4c<br />
<br />
'''Difficulty:''' Unbalanced<br />
<br />
'''Style:''' Skirmish, Minigames<br />
<br />
'''Faction/Era:''' Outlaws<br />
<br />
'''Forum:''' http://forums.wesnoth.org/viewtopic.php?f=8&t=36044<br />
<br />
<br />
<br />
== [[Guide_to_UMC_Campaigns/Players_Reviews|Player Reviews]] ==<br />
<br />
[[Category:Campaigns|*]]</div>Lipk