<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.wesnoth.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Yogi+Bear</id>
	<title>The Battle for Wesnoth Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.wesnoth.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Yogi+Bear"/>
	<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/Special:Contributions/Yogi_Bear"/>
	<updated>2026-04-26T10:06:06Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.31.16</generator>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=Fosdem2010&amp;diff=33399</id>
		<title>Fosdem2010</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=Fosdem2010&amp;diff=33399"/>
		<updated>2009-12-16T20:13:26Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Schedule/Plans */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== General information ==&lt;br /&gt;
This page is meant to somehow coordinate the small Wesconf taking place at FOSDEM 2010. That is everyone attending should please list him/herself in the list of arrivals and stuff like this. FOSDEM 2010 will take place at the first weekend in Febuary 2010, on Saturday 6th and Sunday 7th.&lt;br /&gt;
&lt;br /&gt;
* Fosdem - http://fosdem.org/2010/&lt;br /&gt;
* [http://www.wesnoth.org/forum/viewtopic.php?p=283311#283311 List with phone numbers] (forum moderators only)&lt;br /&gt;
&lt;br /&gt;
== Schedule/Plans ==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! (nick)name(s)&lt;br /&gt;
! Arrival&lt;br /&gt;
! Departure&lt;br /&gt;
! Accomodation&lt;br /&gt;
|-&lt;br /&gt;
| AI&lt;br /&gt;
| Fri, 5th&lt;br /&gt;
| Sun, 7th&lt;br /&gt;
| 2go4, booked by Ivanovic&lt;br /&gt;
|-&lt;br /&gt;
| Boucman&lt;br /&gt;
| Fri, 5th &lt;br /&gt;
| Mon, 8th &lt;br /&gt;
| 2go4, booked by Boucman&lt;br /&gt;
|-&lt;br /&gt;
| Crab&lt;br /&gt;
| Fri, 5th&lt;br /&gt;
| Sun, 7th&lt;br /&gt;
| 2go4, booked by Boucman&lt;br /&gt;
|-&lt;br /&gt;
| Fendrin&lt;br /&gt;
| Fri, 5th&lt;br /&gt;
| Sun, 7th&lt;br /&gt;
| 2go4, booked by Ivanovic&lt;br /&gt;
|-&lt;br /&gt;
| grzywacz &amp;amp; deekay&lt;br /&gt;
| Fri, 5th (?)&lt;br /&gt;
| Mon, 8th (?)&lt;br /&gt;
| unknown&lt;br /&gt;
|-&lt;br /&gt;
| Ivanovic &amp;amp; chrber&lt;br /&gt;
| Fri, 5th&lt;br /&gt;
| Sun, 7th&lt;br /&gt;
| 2go4, booked by Ivanovic&lt;br /&gt;
|-&lt;br /&gt;
| mordante&lt;br /&gt;
| Fri, 5th&lt;br /&gt;
| Sun, 7th&lt;br /&gt;
| 2go4, booked by Ivanovic&lt;br /&gt;
|-&lt;br /&gt;
| Noyga&lt;br /&gt;
| Fri, 5th&lt;br /&gt;
| Sun, 7th&lt;br /&gt;
| 2go4, booked by Boucman&lt;br /&gt;
|-&lt;br /&gt;
| Yogibear&lt;br /&gt;
| Fri, 5th&lt;br /&gt;
| Sun, 7th&lt;br /&gt;
| Thon Hotel Brussels City Centre&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
For accomodations please keep in mind that parking in the center of Brussels is really problematic. It might make sense to drive to the University where FOSDEM takes place, park there and take the bus into the town center (where some of the hotels/hostels are).&lt;br /&gt;
&lt;br /&gt;
Possible hostels that we at least contacted over the last years (some of them might already be booked out by now!):&lt;br /&gt;
* [http://www.chab.be/ CHAB]&lt;br /&gt;
* [http://www.2go4.be/ 2go4] Note: groups bigger 6 are not allowed, so we can (officially) not form a complete Wesnoth group at this hostel, got to meet somewhere in town/at the university...&lt;br /&gt;
* [http://www.jeugdherbergen.be/brusselE.htm Bruegel YH]&lt;br /&gt;
&lt;br /&gt;
On the official FOSDEM page [http://fosdem.org/2010/practical/accomodation some more possible hotels/hostels] are listed.&lt;br /&gt;
&lt;br /&gt;
== Maps ==&lt;br /&gt;
* [http://tinyurl.com/3a65gr Bruegel YH]&lt;br /&gt;
* [http://tinyurl.com/35br9c Brussels Central (Train Station) → Bruegel YH]&lt;br /&gt;
* [http://tinyurl.com/37d9v4 Bruegel YH → Brussels Central (Train Station) → Novotel Grand Place]&lt;br /&gt;
* [http://tinyurl.com/2mzns6 Novotel Grand Place]&lt;br /&gt;
* [http://tinyurl.com/3dggg3 CrownePlaza (Europa)]&lt;br /&gt;
* [http://tinyurl.com/36epxj FOSDEM]&lt;br /&gt;
* [http://tinyurl.com/2w4bms Novotel Grand Place -&amp;gt; FOSDEM]&lt;br /&gt;
&lt;br /&gt;
== Transportation ==&lt;br /&gt;
Information about how to reach the FOSDEM is listed at the [http://fosdem.org/2010/practical/transportation official transportation subpage].&lt;br /&gt;
&lt;br /&gt;
Short version of how to get there for those that reside in Bruegel YH and Novotel Grand Place (basically town center):&lt;br /&gt;
&lt;br /&gt;
* Enter Bus 71 (Debrouckere - Central Station (&amp;quot;Gare Centrale&amp;quot;) - Delta) somewhere at 'Central Station'&lt;br /&gt;
* Leave the bus at &amp;quot;ULB&amp;quot; (crossroads Ave. Adolphe Buyl - Sq. Deveze)&lt;br /&gt;
* Walk down Ave. Paul Heger on your right hand.&lt;br /&gt;
&lt;br /&gt;
== Wesnoth Hacking Room ==&lt;br /&gt;
&lt;br /&gt;
Wesnoth will not have a room of its own. Instead we will use one of the &amp;quot;general hacking rooms&amp;quot;. So far it is not sure which room it will be, if we do it like the last two years, it will be room number 115 in the building AW1. Last year this was the smaller of the two hacking rooms and we had no real problem with conquering (and holding) the first row in this room. There were not too many power outlets, so this year at least Ivanovic will bring one multi-outlet power strip plus some extension cable (5m or something like this). There is no wired network, everything wireless (and sometimes rather/very unstable!). Beside this you should bring laptops since there are no computers available for hacking.&lt;br /&gt;
&lt;br /&gt;
Short version:&lt;br /&gt;
 AW1 - Room 115&lt;br /&gt;
&lt;br /&gt;
== Planned discussion ==&lt;br /&gt;
We usually discuss all sorts of things at FOSDEM, this section is here to have a small bullet list of things that we actively want to discuss at FOSDEM.&lt;br /&gt;
* GSOC 2010: finding mentors, organizing the submission etc..&lt;br /&gt;
* FOSDEM 2011 : trying to get a dev room with other games ?&lt;br /&gt;
* [wanted: discussion topics!]&lt;br /&gt;
&lt;br /&gt;
== FOSDEM 2009 ==&lt;br /&gt;
We were already at FOSDEM 2009, here something as reference:&lt;br /&gt;
&lt;br /&gt;
* [http://www.wesnoth.org/wiki/Fosdem2009 FOSDEM 2009 wiki page]&lt;br /&gt;
&lt;br /&gt;
== FOSDEM 2008 ==&lt;br /&gt;
We were already at FOSDEM 2008, here something as reference:&lt;br /&gt;
&lt;br /&gt;
* [http://www.wesnoth.org/forum/viewtopic.php?p=283649#p283649 Forum topic (with group photo)]&lt;br /&gt;
* [http://www.wesnoth.org/wiki/Fosdem2008 2008 wiki page]&lt;br /&gt;
* [https://mail.gna.org/public/wesnoth-dev/2008-02/msg00078.html Summary of FOSDEM 2008 results]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Wesconf]]&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=EasyCoding&amp;diff=32193</id>
		<title>EasyCoding</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=EasyCoding&amp;diff=32193"/>
		<updated>2009-09-05T14:25:58Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* * Savegame dialog */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Foreword ==&lt;br /&gt;
This page is here to document easy to do coding tasks. It is not here to double the feature request database, and should only be filled by people that know the code well enough to judge the difficulty of a given task. &lt;br /&gt;
&lt;br /&gt;
If you are such a person, you should feel free to edit this page.&lt;br /&gt;
&lt;br /&gt;
If you're not, you should post a feature request and discuss your idea on the forum or IRC. A coder with better knowledge of the code might give you the green light to add your feature here.&lt;br /&gt;
&lt;br /&gt;
Anybody should feel free to add &amp;quot;clues&amp;quot; to any tasks, that is entry points, traps to avoid, person to contact to discuss and so on.&lt;br /&gt;
&lt;br /&gt;
If you plan to work on a feature, write your name at the bottom of the feature, with the date. Note that if you are too long at working on a feature I'll &amp;quot;free&amp;quot; it back (that is if you're not working on it. If you have problems implementing it, just tell us....)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--[[User:Boucman|Boucman]] 20:48, 3 October 2006 (CEST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Since bugs are sometimes a good opportunity to get a first idea of the code, i will add some here that are easy to fix as soon as i stumble upon them (the one i had in mind is fixed already ;-).&lt;br /&gt;
&lt;br /&gt;
--Yogi Bear, 28 February 2008&lt;br /&gt;
&lt;br /&gt;
== MP related features ==&lt;br /&gt;
&lt;br /&gt;
=== Use different font for in-game chat ===&lt;br /&gt;
Since commas and dots are apparently hard to tell apart. As per FR #7470 [https://gna.org/bugs/?7470]&lt;br /&gt;
&lt;br /&gt;
== WML related features ==&lt;br /&gt;
&lt;br /&gt;
=== WML configurable village income / upkeep ===&lt;br /&gt;
Preferably as a [scenario], [side] or [campaign] keys. As per FR #6301 [https://gna.org/bugs/?6301]. Patch submitted: [https://gna.org/patch/index.php?1162] (gabba)&lt;br /&gt;
&lt;br /&gt;
=== Add support of [if] for [scenario] ===&lt;br /&gt;
As per FR #4539 [https://gna.org/bugs/?4539]&lt;br /&gt;
&lt;br /&gt;
=== Make [have_unit] optionaly use full SUF ===&lt;br /&gt;
[have_unit] by default uses SUF but does not apply it to recall list. Introduce an optional key that will allow to lift that limitation.&lt;br /&gt;
&lt;br /&gt;
=== Side-specific results ===&lt;br /&gt;
Giving result=defeat or result=victory for specific sides. ([http://gna.org/bugs/index.php?4960 FR #4960]) -- [[User:dlr365|dlr365]] -- patch submitted [https://gna.org/bugs/index.php?4960]&lt;br /&gt;
&lt;br /&gt;
=== Support for leaderless multiplayergames ===&lt;br /&gt;
Add support for the WML key victory_when_enemies_defeated= in the scenario tag during multiplayergames. ([https://gna.org/bugs/index.php?8106 FR #8106])&lt;br /&gt;
&lt;br /&gt;
=== Support for standalone multiplayer scenarios ===&lt;br /&gt;
There used to be support for standalone scenarios in the userdata tree, in reorganising the trees this feature got lost and an add-on is now required to add a scenario.&lt;br /&gt;
Re-add this feature. It is probably a good idea to mirror the mainline multiplayer tree.&lt;br /&gt;
&lt;br /&gt;
=== Other Ideas ===&lt;br /&gt;
See [[FutureWML]]; some ideas there are easier than others.&lt;br /&gt;
&lt;br /&gt;
== Improvements to AI ==&lt;br /&gt;
&lt;br /&gt;
Fix some todos, add new formula functions, or do minor improvements to the formula language. Make it easier to debug the formula language, add more ai components.&lt;br /&gt;
&lt;br /&gt;
Please discuss these with Crab, Dragonking, Sirp or Boucman&lt;br /&gt;
&lt;br /&gt;
=== VERY easy tasks ===&lt;br /&gt;
&lt;br /&gt;
==== Relocate code ====&lt;br /&gt;
find a new home for config_value_translator and &lt;br /&gt;
variant_value_translator template classes. (currently they are in src/ai/composite/aspect.hpp)&lt;br /&gt;
They should be in the separate file.&lt;br /&gt;
&lt;br /&gt;
==== A small rename ====&lt;br /&gt;
rename paths::step::move_left to paths::step::move_cost&lt;br /&gt;
See r34430 for more details&lt;br /&gt;
&lt;br /&gt;
==== Terrain Filter ====&lt;br /&gt;
add a const static terrain_filter::match_nothing_terrain_filter which matches nothing (constructor parameter is 'config cfg(&amp;quot;not&amp;quot;)' )&lt;br /&gt;
replace all places which construct that match_nothing_terrain_filter on the fly to use the new static filter.&lt;br /&gt;
&lt;br /&gt;
=== AI Batch testing ===&lt;br /&gt;
&lt;br /&gt;
Finish patch #1169 [https://gna.org/patch/?1169]&lt;br /&gt;
&lt;br /&gt;
=== Add new generic observers to ai::manager ===&lt;br /&gt;
&lt;br /&gt;
add an observer of 'time of day has changed' event&lt;br /&gt;
&lt;br /&gt;
add an observer of 'minor gamestate changed' event&lt;br /&gt;
=== Allow ai to use teleports ===&lt;br /&gt;
to do that, add needed parameter to a_star_search in move_result::test_route (src/ai/actions.cpp )&lt;br /&gt;
&lt;br /&gt;
=== Add more ai actions ===&lt;br /&gt;
&lt;br /&gt;
Add an ai action (and add formula_ai function to do that) to set a goto on a unit&lt;br /&gt;
&lt;br /&gt;
Add an ai action (and add formula_ai function to do that) to send a chat message to a player&lt;br /&gt;
&lt;br /&gt;
Add an ai action to set formula ai variable (convert existing code from formula_ai)&lt;br /&gt;
&lt;br /&gt;
Add an ai action to set formula ai unit variable (convert existing code from formula_ai)&lt;br /&gt;
&lt;br /&gt;
=== write a (fai or c++) candidate action for leader control ===&lt;br /&gt;
&lt;br /&gt;
=== write a (fai or c++) candidate action for using leadership/illuminate  ===&lt;br /&gt;
special handling of units with leadership to have them support units. Only do it if it actually is useful (less hits needed to kill the unit) and ability to help multiple units in a single turn (assuming enough MP)&lt;br /&gt;
&lt;br /&gt;
=== write a (fai or c++) candidate action for healer control ===&lt;br /&gt;
Handle units with healing power, moving them at places where they can provide the most healing&lt;br /&gt;
&lt;br /&gt;
=== berserker improvement ===&lt;br /&gt;
The default AI's strategy of attacking as much as possible is very bad with berserker... A simple AI that would prevent the berserker from attacking (and keeping him close to fight without being exposed) and attack when the chance to kill is high enough would be an interesting addition&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== power projection improvement ===&lt;br /&gt;
AI sometimes wants to calculate 'how much firepower can enemy bring on location X'. in doing so, it considers enemy possible moves, time of day, attacks, enemy defense, etc.&lt;br /&gt;
There is specific problem with 'time_of_day' used in that calculation -sometimes, it's really needed to check 'time of day for NEXT turn', not time of day for THIS turn.(since the time of day might change next turn). &lt;br /&gt;
&lt;br /&gt;
power_projection must be fixed to account for the possibility of time_of_day being different.&lt;br /&gt;
&lt;br /&gt;
Note that some enemies might go after us (so, still on THIS turn), and some - before us (so, their next turn will be on NEXT turn).&lt;br /&gt;
&lt;br /&gt;
== GUI related features ==&lt;br /&gt;
-------------------&lt;br /&gt;
&lt;br /&gt;
Note at the moment Mordante is working on a new GUI system, these &lt;br /&gt;
changes will probably affect the way these items need to be implemented.&lt;br /&gt;
Contact Mordante on IRC before starting to work on these.&lt;br /&gt;
  &lt;br /&gt;
--[[User:SkeletonCrew|SkeletonCrew]] 14:04, 9 March 2008 (EDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Theme Changes ===&lt;br /&gt;
&lt;br /&gt;
* allow custom themes to display values of WML variables ([http://gna.org/bugs/index.php?6209 FR #6209])&lt;br /&gt;
* hide the hourglass item from the statusbar when there is no timer&lt;br /&gt;
&lt;br /&gt;
=== Widget Changes ===&lt;br /&gt;
* show side number, name and team association information in the status table &lt;br /&gt;
* make games sortable in the lobby (open slots, total number of players, era, XP modifier, gold per village, fog/shroud) &lt;br /&gt;
* input history (chat, commands, ..) - note: rujasu is working on this feature&lt;br /&gt;
&lt;br /&gt;
== GUI2 related features ==&lt;br /&gt;
GUI2 is the new gui engine Mordante/SkeletonCrew is working on. &lt;br /&gt;
* Information on the wiki can be found here http://www.wesnoth.org/wiki/GUIToolkit&lt;br /&gt;
* The source code is under src/gui/&lt;br /&gt;
* The configuration config files are under data/gui/default&lt;br /&gt;
&lt;br /&gt;
Some tasks need the --new-widgets since the code is only shown in the experimental mode. Tasks which need this switch have the * in the title.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Arrow keys for the slider ===&lt;br /&gt;
There's a new slider widget, but it doesn't support the keyboard yet.&lt;br /&gt;
gui/widgets/slider.[c|h]pp&lt;br /&gt;
&lt;br /&gt;
Clicking on the widget should capture the keyboard and then arrow left/right should move one step even if not all steps are visible.&lt;br /&gt;
&lt;br /&gt;
=== Slider sizing ===&lt;br /&gt;
There are some issues with the sizing of a slider.&lt;br /&gt;
gui/widgets/slider.[c|h]pp&lt;br /&gt;
&lt;br /&gt;
In a layout step it needs to try to shrink itself, not entirely sure where or how yet, best ask mordante on irc.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;del&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Miscellaneous ==&lt;br /&gt;
&lt;br /&gt;
=== More powerful village naming ===&lt;br /&gt;
'''Adding mountain names and other features to village names, having a second random name in village names'''&lt;br /&gt;
&lt;br /&gt;
Currently the village naming engine has a very good structure that could allow &lt;br /&gt;
more powerfull names to be generated. &lt;br /&gt;
Understanding how it works should be quite easy, and a few usefull improvements could be added.&lt;br /&gt;
&lt;br /&gt;
* Currently villages can use lake names and river names, this should be extended to other features like bridges, swamps, mountains etc...&lt;br /&gt;
* It would be nice to have a separate list of &amp;quot;first sylabus&amp;quot; and &amp;quot;last sylabus&amp;quot; for naming. That's not really needed in english, but some translations could use it&lt;br /&gt;
* Again, it is common to have villages with more than one &amp;quot;random&amp;quot; word in them. having a $name2 variable would be nice&lt;br /&gt;
&lt;br /&gt;
Euschn 24/03/2009&lt;br /&gt;
&lt;br /&gt;
=== Debug Mode ===&lt;br /&gt;
* New debug command functionality (setting additional status.variables, possibly terrain)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bugs ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
[[NotSoEasyCoding]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Future]]&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=EasyCoding&amp;diff=32192</id>
		<title>EasyCoding</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=EasyCoding&amp;diff=32192"/>
		<updated>2009-09-05T14:25:30Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Savegame related stuff */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Foreword ==&lt;br /&gt;
This page is here to document easy to do coding tasks. It is not here to double the feature request database, and should only be filled by people that know the code well enough to judge the difficulty of a given task. &lt;br /&gt;
&lt;br /&gt;
If you are such a person, you should feel free to edit this page.&lt;br /&gt;
&lt;br /&gt;
If you're not, you should post a feature request and discuss your idea on the forum or IRC. A coder with better knowledge of the code might give you the green light to add your feature here.&lt;br /&gt;
&lt;br /&gt;
Anybody should feel free to add &amp;quot;clues&amp;quot; to any tasks, that is entry points, traps to avoid, person to contact to discuss and so on.&lt;br /&gt;
&lt;br /&gt;
If you plan to work on a feature, write your name at the bottom of the feature, with the date. Note that if you are too long at working on a feature I'll &amp;quot;free&amp;quot; it back (that is if you're not working on it. If you have problems implementing it, just tell us....)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--[[User:Boucman|Boucman]] 20:48, 3 October 2006 (CEST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Since bugs are sometimes a good opportunity to get a first idea of the code, i will add some here that are easy to fix as soon as i stumble upon them (the one i had in mind is fixed already ;-).&lt;br /&gt;
&lt;br /&gt;
--Yogi Bear, 28 February 2008&lt;br /&gt;
&lt;br /&gt;
== MP related features ==&lt;br /&gt;
&lt;br /&gt;
=== Use different font for in-game chat ===&lt;br /&gt;
Since commas and dots are apparently hard to tell apart. As per FR #7470 [https://gna.org/bugs/?7470]&lt;br /&gt;
&lt;br /&gt;
== WML related features ==&lt;br /&gt;
&lt;br /&gt;
=== WML configurable village income / upkeep ===&lt;br /&gt;
Preferably as a [scenario], [side] or [campaign] keys. As per FR #6301 [https://gna.org/bugs/?6301]. Patch submitted: [https://gna.org/patch/index.php?1162] (gabba)&lt;br /&gt;
&lt;br /&gt;
=== Add support of [if] for [scenario] ===&lt;br /&gt;
As per FR #4539 [https://gna.org/bugs/?4539]&lt;br /&gt;
&lt;br /&gt;
=== Make [have_unit] optionaly use full SUF ===&lt;br /&gt;
[have_unit] by default uses SUF but does not apply it to recall list. Introduce an optional key that will allow to lift that limitation.&lt;br /&gt;
&lt;br /&gt;
=== Side-specific results ===&lt;br /&gt;
Giving result=defeat or result=victory for specific sides. ([http://gna.org/bugs/index.php?4960 FR #4960]) -- [[User:dlr365|dlr365]] -- patch submitted [https://gna.org/bugs/index.php?4960]&lt;br /&gt;
&lt;br /&gt;
=== Support for leaderless multiplayergames ===&lt;br /&gt;
Add support for the WML key victory_when_enemies_defeated= in the scenario tag during multiplayergames. ([https://gna.org/bugs/index.php?8106 FR #8106])&lt;br /&gt;
&lt;br /&gt;
=== Support for standalone multiplayer scenarios ===&lt;br /&gt;
There used to be support for standalone scenarios in the userdata tree, in reorganising the trees this feature got lost and an add-on is now required to add a scenario.&lt;br /&gt;
Re-add this feature. It is probably a good idea to mirror the mainline multiplayer tree.&lt;br /&gt;
&lt;br /&gt;
=== Other Ideas ===&lt;br /&gt;
See [[FutureWML]]; some ideas there are easier than others.&lt;br /&gt;
&lt;br /&gt;
== Improvements to AI ==&lt;br /&gt;
&lt;br /&gt;
Fix some todos, add new formula functions, or do minor improvements to the formula language. Make it easier to debug the formula language, add more ai components.&lt;br /&gt;
&lt;br /&gt;
Please discuss these with Crab, Dragonking, Sirp or Boucman&lt;br /&gt;
&lt;br /&gt;
=== VERY easy tasks ===&lt;br /&gt;
&lt;br /&gt;
==== Relocate code ====&lt;br /&gt;
find a new home for config_value_translator and &lt;br /&gt;
variant_value_translator template classes. (currently they are in src/ai/composite/aspect.hpp)&lt;br /&gt;
They should be in the separate file.&lt;br /&gt;
&lt;br /&gt;
==== A small rename ====&lt;br /&gt;
rename paths::step::move_left to paths::step::move_cost&lt;br /&gt;
See r34430 for more details&lt;br /&gt;
&lt;br /&gt;
==== Terrain Filter ====&lt;br /&gt;
add a const static terrain_filter::match_nothing_terrain_filter which matches nothing (constructor parameter is 'config cfg(&amp;quot;not&amp;quot;)' )&lt;br /&gt;
replace all places which construct that match_nothing_terrain_filter on the fly to use the new static filter.&lt;br /&gt;
&lt;br /&gt;
=== AI Batch testing ===&lt;br /&gt;
&lt;br /&gt;
Finish patch #1169 [https://gna.org/patch/?1169]&lt;br /&gt;
&lt;br /&gt;
=== Add new generic observers to ai::manager ===&lt;br /&gt;
&lt;br /&gt;
add an observer of 'time of day has changed' event&lt;br /&gt;
&lt;br /&gt;
add an observer of 'minor gamestate changed' event&lt;br /&gt;
=== Allow ai to use teleports ===&lt;br /&gt;
to do that, add needed parameter to a_star_search in move_result::test_route (src/ai/actions.cpp )&lt;br /&gt;
&lt;br /&gt;
=== Add more ai actions ===&lt;br /&gt;
&lt;br /&gt;
Add an ai action (and add formula_ai function to do that) to set a goto on a unit&lt;br /&gt;
&lt;br /&gt;
Add an ai action (and add formula_ai function to do that) to send a chat message to a player&lt;br /&gt;
&lt;br /&gt;
Add an ai action to set formula ai variable (convert existing code from formula_ai)&lt;br /&gt;
&lt;br /&gt;
Add an ai action to set formula ai unit variable (convert existing code from formula_ai)&lt;br /&gt;
&lt;br /&gt;
=== write a (fai or c++) candidate action for leader control ===&lt;br /&gt;
&lt;br /&gt;
=== write a (fai or c++) candidate action for using leadership/illuminate  ===&lt;br /&gt;
special handling of units with leadership to have them support units. Only do it if it actually is useful (less hits needed to kill the unit) and ability to help multiple units in a single turn (assuming enough MP)&lt;br /&gt;
&lt;br /&gt;
=== write a (fai or c++) candidate action for healer control ===&lt;br /&gt;
Handle units with healing power, moving them at places where they can provide the most healing&lt;br /&gt;
&lt;br /&gt;
=== berserker improvement ===&lt;br /&gt;
The default AI's strategy of attacking as much as possible is very bad with berserker... A simple AI that would prevent the berserker from attacking (and keeping him close to fight without being exposed) and attack when the chance to kill is high enough would be an interesting addition&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== power projection improvement ===&lt;br /&gt;
AI sometimes wants to calculate 'how much firepower can enemy bring on location X'. in doing so, it considers enemy possible moves, time of day, attacks, enemy defense, etc.&lt;br /&gt;
There is specific problem with 'time_of_day' used in that calculation -sometimes, it's really needed to check 'time of day for NEXT turn', not time of day for THIS turn.(since the time of day might change next turn). &lt;br /&gt;
&lt;br /&gt;
power_projection must be fixed to account for the possibility of time_of_day being different.&lt;br /&gt;
&lt;br /&gt;
Note that some enemies might go after us (so, still on THIS turn), and some - before us (so, their next turn will be on NEXT turn).&lt;br /&gt;
&lt;br /&gt;
== GUI related features ==&lt;br /&gt;
-------------------&lt;br /&gt;
&lt;br /&gt;
Note at the moment Mordante is working on a new GUI system, these &lt;br /&gt;
changes will probably affect the way these items need to be implemented.&lt;br /&gt;
Contact Mordante on IRC before starting to work on these.&lt;br /&gt;
  &lt;br /&gt;
--[[User:SkeletonCrew|SkeletonCrew]] 14:04, 9 March 2008 (EDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Theme Changes ===&lt;br /&gt;
&lt;br /&gt;
* allow custom themes to display values of WML variables ([http://gna.org/bugs/index.php?6209 FR #6209])&lt;br /&gt;
* hide the hourglass item from the statusbar when there is no timer&lt;br /&gt;
&lt;br /&gt;
=== Widget Changes ===&lt;br /&gt;
* show side number, name and team association information in the status table &lt;br /&gt;
* make games sortable in the lobby (open slots, total number of players, era, XP modifier, gold per village, fog/shroud) &lt;br /&gt;
* input history (chat, commands, ..) - note: rujasu is working on this feature&lt;br /&gt;
&lt;br /&gt;
== GUI2 related features ==&lt;br /&gt;
GUI2 is the new gui engine Mordante/SkeletonCrew is working on. &lt;br /&gt;
* Information on the wiki can be found here http://www.wesnoth.org/wiki/GUIToolkit&lt;br /&gt;
* The source code is under src/gui/&lt;br /&gt;
* The configuration config files are under data/gui/default&lt;br /&gt;
&lt;br /&gt;
Some tasks need the --new-widgets since the code is only shown in the experimental mode. Tasks which need this switch have the * in the title.&lt;br /&gt;
&lt;br /&gt;
=== * Savegame dialog ===&lt;br /&gt;
This is a new dialog to write and requires the minimap code to be fixed first. The dialog should mimic the current dialog. Sorting of a listbox and the proper alignment of the columns is not important (the engine doesn't support this yet). The code should only be used when --new-widgets is used as start switch since we're in a feature freeze at the moment.&lt;br /&gt;
&lt;br /&gt;
=== Arrow keys for the slider ===&lt;br /&gt;
There's a new slider widget, but it doesn't support the keyboard yet.&lt;br /&gt;
gui/widgets/slider.[c|h]pp&lt;br /&gt;
&lt;br /&gt;
Clicking on the widget should capture the keyboard and then arrow left/right should move one step even if not all steps are visible.&lt;br /&gt;
&lt;br /&gt;
=== Slider sizing ===&lt;br /&gt;
There are some issues with the sizing of a slider.&lt;br /&gt;
gui/widgets/slider.[c|h]pp&lt;br /&gt;
&lt;br /&gt;
In a layout step it needs to try to shrink itself, not entirely sure where or how yet, best ask mordante on irc.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;del&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Miscellaneous ==&lt;br /&gt;
&lt;br /&gt;
=== More powerful village naming ===&lt;br /&gt;
'''Adding mountain names and other features to village names, having a second random name in village names'''&lt;br /&gt;
&lt;br /&gt;
Currently the village naming engine has a very good structure that could allow &lt;br /&gt;
more powerfull names to be generated. &lt;br /&gt;
Understanding how it works should be quite easy, and a few usefull improvements could be added.&lt;br /&gt;
&lt;br /&gt;
* Currently villages can use lake names and river names, this should be extended to other features like bridges, swamps, mountains etc...&lt;br /&gt;
* It would be nice to have a separate list of &amp;quot;first sylabus&amp;quot; and &amp;quot;last sylabus&amp;quot; for naming. That's not really needed in english, but some translations could use it&lt;br /&gt;
* Again, it is common to have villages with more than one &amp;quot;random&amp;quot; word in them. having a $name2 variable would be nice&lt;br /&gt;
&lt;br /&gt;
Euschn 24/03/2009&lt;br /&gt;
&lt;br /&gt;
=== Debug Mode ===&lt;br /&gt;
* New debug command functionality (setting additional status.variables, possibly terrain)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bugs ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
[[NotSoEasyCoding]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Future]]&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30424</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30424"/>
		<updated>2009-05-06T19:58:21Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Miscellaneous */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Information =&lt;br /&gt;
* Links&lt;br /&gt;
** [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
** [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
* Coding Guidelines&lt;br /&gt;
** [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
** [[CodingStandards]] - for programmers&lt;br /&gt;
** [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
* Library documentation&lt;br /&gt;
** http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
= Tools and Packaging =&lt;br /&gt;
* Supporting Websites&lt;br /&gt;
** [[WesnothSVN]] - accessing the source code&lt;br /&gt;
** http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
** http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
* Compiling and Building&lt;br /&gt;
** [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
** [[SCons]]&lt;br /&gt;
** [[UsingAutotools]]&lt;br /&gt;
* Packaging and Releasing&lt;br /&gt;
** [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
** [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
* Documentation&lt;br /&gt;
** [[Doxygen]] - Documentation generator&lt;br /&gt;
* More stuff&lt;br /&gt;
** [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
** [[MaintenanceTools]] WMLLint, WMLIndent and WMLScope&lt;br /&gt;
&lt;br /&gt;
= I want to start coding, what can I do? =&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
* [[GettingStarted]]&lt;br /&gt;
* [[FrequentlyProposedIdeas]] - summary of past often-repeated forum discussions&lt;br /&gt;
* [[Wesnoth_Acronyms_and_Slang]]&lt;br /&gt;
&lt;br /&gt;
= Game - Create content =&lt;br /&gt;
* [[BuildingScenarios]] and related useful forum discussions: &lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4188 Beginning Campaign Development]&lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4301 A Balancing Act]&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
= Code documentation =&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
* AI&lt;br /&gt;
** [[AI_Module]] - guide to AI module (src/ai)&lt;br /&gt;
** [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* Themes&lt;br /&gt;
** [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* Multiplayer&lt;br /&gt;
** [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
* Gui2 - The new Gui-Framework&lt;br /&gt;
** [[GUIToolkit]]&lt;br /&gt;
** [[GUILayout]]&lt;br /&gt;
** [[GUIVariable]]&lt;br /&gt;
** Gui2 WML&lt;br /&gt;
*** [[GUICanvasWML]]&lt;br /&gt;
*** [[GUIToolkitWML]]&lt;br /&gt;
*** [[GUIWidgetDefinitionWML]]&lt;br /&gt;
*** [[GUIWidgetInstanceWML]]&lt;br /&gt;
*** [[GUIWindowDefinitionWML]]&lt;br /&gt;
* Savegames&lt;br /&gt;
** [[SavegameClassHierarchy]]&lt;br /&gt;
&lt;br /&gt;
= Communication, Feedback, Events =&lt;br /&gt;
* Gna! links&lt;br /&gt;
** http://bugs.wesnoth.org/ - Gna! - bugs and feature requests&lt;br /&gt;
** http://patches.wesnoth.org/ - Gna! - patches&lt;br /&gt;
&lt;br /&gt;
* Mailing lists&lt;br /&gt;
** https://mail.gna.org/listinfo/wesnoth-dev/ - wesnoth-dev&lt;br /&gt;
** https://mail.gna.org/listinfo/wesnoth-commits/ - wesnoth-commits&lt;br /&gt;
&lt;br /&gt;
* IRC&lt;br /&gt;
** [irc://irc.wesnoth.org/#wesnoth-dev freenode/#wesnoth-dev] - IRC (alias to irc.freenode.net)&lt;br /&gt;
** http://irclog.wesnoth.org/ - IRC logs&lt;br /&gt;
&lt;br /&gt;
* Forum - http://forum.wesnoth.org&lt;br /&gt;
&lt;br /&gt;
* This wiki - http://www.wesnoth.org/wiki/Main_Page &lt;br /&gt;
&lt;br /&gt;
* FOSDEM&lt;br /&gt;
** [[Fosdem2008]]&lt;br /&gt;
** [[Fosdem2009]]&lt;br /&gt;
&lt;br /&gt;
* Google Summer of Code&lt;br /&gt;
** [[SummerOfCodeIdeas]] - Ideas for GSoC&lt;br /&gt;
** [[SoC_Information_for_Google]] - Our organization profile for Google&lt;br /&gt;
** [[SoC_People_to_bug_on_IRC]] - Who GSoC students can ask for help&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Miscellaneous =&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;br /&gt;
* http://units.wesnoth.org/ - Unit reference&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30383</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30383"/>
		<updated>2009-05-02T20:48:28Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Code documentation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Information =&lt;br /&gt;
* Links&lt;br /&gt;
** [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
** [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
* Coding Guidelines&lt;br /&gt;
** [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
** [[CodingStandards]] - for programmers&lt;br /&gt;
** [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
* Library documentation&lt;br /&gt;
** http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
= Tools and Packaging =&lt;br /&gt;
* Supporting Websites&lt;br /&gt;
** [[WesnothSVN]] - accessing the source code&lt;br /&gt;
** http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
** http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
* Compiling and Building&lt;br /&gt;
** [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
** [[SCons]]&lt;br /&gt;
** [[UsingAutotools]]&lt;br /&gt;
* Packaging and Releasing&lt;br /&gt;
** [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
** [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
* Documentation&lt;br /&gt;
** [[Doxygen]] - Documentation generator&lt;br /&gt;
* More stuff&lt;br /&gt;
** [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
** [[MaintenanceTools]] WMLLint, WMLIndent and WMLScope&lt;br /&gt;
&lt;br /&gt;
= I want to start coding, what can I do? =&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
= Game - Create content =&lt;br /&gt;
* [[BuildingScenarios]] and related useful forum discussions: &lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4188 Beginning Campaign Development]&lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4301 A Balancing Act]&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
= Code documentation =&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
* AI&lt;br /&gt;
** [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
** [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* Themes&lt;br /&gt;
** [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* Multiplayer&lt;br /&gt;
** [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
* Gui2 - The new Gui-Framework&lt;br /&gt;
** [[GUIToolkit]]&lt;br /&gt;
** [[GUILayout]]&lt;br /&gt;
** [[GUIVariable]]&lt;br /&gt;
** Gui2 WML&lt;br /&gt;
*** [[GUICanvasWML]]&lt;br /&gt;
*** [[GUIToolkitWML]]&lt;br /&gt;
*** [[GUIWidgetDefinitionWML]]&lt;br /&gt;
*** [[GUIWidgetInstanceWML]]&lt;br /&gt;
*** [[GUIWindowDefinitionWML]]&lt;br /&gt;
* Savegames&lt;br /&gt;
** [[SavegameClassHierarchy]]&lt;br /&gt;
&lt;br /&gt;
= Communication, Feedback, Events =&lt;br /&gt;
* Gna! links&lt;br /&gt;
** http://bugs.wesnoth.org/ - Gna! - bugs and feature requests&lt;br /&gt;
** http://patches.wesnoth.org/ - Gna! - patches&lt;br /&gt;
&lt;br /&gt;
* Mailing lists&lt;br /&gt;
** https://mail.gna.org/listinfo/wesnoth-dev/ - wesnoth-dev&lt;br /&gt;
** https://mail.gna.org/listinfo/wesnoth-commits/ - wesnoth-commits&lt;br /&gt;
&lt;br /&gt;
* IRC&lt;br /&gt;
** [irc://irc.wesnoth.org/#wesnoth-dev freenode/#wesnoth-dev] - IRC (alias to irc.freenode.net)&lt;br /&gt;
** http://irclog.wesnoth.org/ - IRC logs&lt;br /&gt;
&lt;br /&gt;
* FOSDEM&lt;br /&gt;
** [[Fosdem2008]]&lt;br /&gt;
** [[Fosdem2009]]&lt;br /&gt;
&lt;br /&gt;
* Google Summer of Code&lt;br /&gt;
** [[SummerOfCodeIdeas]] - Ideas for GSoC&lt;br /&gt;
** [[SoC_Information_for_Google]] - Our organization profile for Google&lt;br /&gt;
** [[SoC_People_to_bug_on_IRC]] - Who GSoC students can ask for help&lt;br /&gt;
&lt;br /&gt;
= Miscellaneous =&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30374</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30374"/>
		<updated>2009-05-01T21:14:48Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Code documentation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Information =&lt;br /&gt;
* Links&lt;br /&gt;
** [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
** [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
* Coding Guidelines&lt;br /&gt;
** [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
** [[CodingStandards]] - for programmers&lt;br /&gt;
** [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
* Library documentation&lt;br /&gt;
** http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
= Tools and Packaging =&lt;br /&gt;
* Supporting Websites&lt;br /&gt;
** [[WesnothSVN]] - accessing the source code&lt;br /&gt;
** http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
** http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
* Compiling and Building&lt;br /&gt;
** [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
** [[SCons]]&lt;br /&gt;
** [[UsingAutotools]]&lt;br /&gt;
* Packaging and Releasing&lt;br /&gt;
** [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
** [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
* Documentation&lt;br /&gt;
** [[Doxygen]] - Documentation generator&lt;br /&gt;
* More stuff&lt;br /&gt;
** [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
** [[MaintenanceTools]] WMLLint, WMLIndent and WMLScope&lt;br /&gt;
&lt;br /&gt;
= I want to start coding, what can i do? =&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
= Game - Create content =&lt;br /&gt;
* [[BuildingScenarios]] and related useful forum discussions: &lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4188 Beginning Campaign Development]&lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4301 A Balancing Act]&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
= Code documentation =&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
* AI&lt;br /&gt;
** [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
** [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* Themes&lt;br /&gt;
** [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* Multiplayer&lt;br /&gt;
** [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
* Gui2 - The new Gui-Framework&lt;br /&gt;
** [[GUIToolkit]]&lt;br /&gt;
** [[GUILayout]]&lt;br /&gt;
** [[GUIVariable]]&lt;br /&gt;
** Gui2 WML&lt;br /&gt;
*** [[GUICanvasWML]]&lt;br /&gt;
*** [[GUIToolkitWML]]&lt;br /&gt;
*** [[GUIWidgetDefinitionWML]]&lt;br /&gt;
*** [[GUIWidgetInstanceWML]]&lt;br /&gt;
*** [[GUIWindowDefinitionWML]]&lt;br /&gt;
&lt;br /&gt;
= Communication, Feedback, Events =&lt;br /&gt;
* Gna! links&lt;br /&gt;
** http://bugs.wesnoth.org/ - Gna! - bugs and feature requests&lt;br /&gt;
** http://patches.wesnoth.org/ - Gna! - patches&lt;br /&gt;
&lt;br /&gt;
* Mailing lists&lt;br /&gt;
** https://mail.gna.org/listinfo/wesnoth-dev/ - wesnoth-dev&lt;br /&gt;
** https://mail.gna.org/listinfo/wesnoth-commits/ - wesnoth-commits&lt;br /&gt;
&lt;br /&gt;
* IRC&lt;br /&gt;
** [irc://irc.wesnoth.org/#wesnoth-dev freenode/#wesnoth-dev] - IRC (alias to irc.freenode.net)&lt;br /&gt;
** http://irclog.wesnoth.org/ - IRC logs&lt;br /&gt;
&lt;br /&gt;
* FOSDEM&lt;br /&gt;
** [[Fosdem2008]]&lt;br /&gt;
** [[Fosdem2009]]&lt;br /&gt;
&lt;br /&gt;
* Google Summer of Code&lt;br /&gt;
** [[SummerOfCodeIdeas]] - Ideas for GSoC&lt;br /&gt;
** [[SoC_Information_for_Google]] - Our organization profile for Google&lt;br /&gt;
** [[SoC_People_to_bug_on_IRC]] - Who GSoC students can ask for help&lt;br /&gt;
&lt;br /&gt;
= Miscellaneous =&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30373</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30373"/>
		<updated>2009-05-01T21:09:56Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Tools and Packaging */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Information =&lt;br /&gt;
* Links&lt;br /&gt;
** [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
** [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
* Coding Guidelines&lt;br /&gt;
** [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
** [[CodingStandards]] - for programmers&lt;br /&gt;
** [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
* Library documentation&lt;br /&gt;
** http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
= Tools and Packaging =&lt;br /&gt;
* Supporting Websites&lt;br /&gt;
** [[WesnothSVN]] - accessing the source code&lt;br /&gt;
** http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
** http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
* Compiling and Building&lt;br /&gt;
** [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
** [[SCons]]&lt;br /&gt;
** [[UsingAutotools]]&lt;br /&gt;
* Packaging and Releasing&lt;br /&gt;
** [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
** [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
* Documentation&lt;br /&gt;
** [[Doxygen]] - Documentation generator&lt;br /&gt;
* More stuff&lt;br /&gt;
** [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
** [[MaintenanceTools]] WMLLint, WMLIndent and WMLScope&lt;br /&gt;
&lt;br /&gt;
= I want to start coding, what can i do? =&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
= Game - Create content =&lt;br /&gt;
* [[BuildingScenarios]] and related useful forum discussions: &lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4188 Beginning Campaign Development]&lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4301 A Balancing Act]&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
= Code documentation =&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
* AI&lt;br /&gt;
** [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
** [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* Themes&lt;br /&gt;
** [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* Multiplayer&lt;br /&gt;
** [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
&lt;br /&gt;
= Communication, Feedback, Events =&lt;br /&gt;
* Gna! links&lt;br /&gt;
** http://bugs.wesnoth.org/ - Gna! - bugs and feature requests&lt;br /&gt;
** http://patches.wesnoth.org/ - Gna! - patches&lt;br /&gt;
&lt;br /&gt;
* Mailing lists&lt;br /&gt;
** https://mail.gna.org/listinfo/wesnoth-dev/ - wesnoth-dev&lt;br /&gt;
** https://mail.gna.org/listinfo/wesnoth-commits/ - wesnoth-commits&lt;br /&gt;
&lt;br /&gt;
* IRC&lt;br /&gt;
** [irc://irc.wesnoth.org/#wesnoth-dev freenode/#wesnoth-dev] - IRC (alias to irc.freenode.net)&lt;br /&gt;
** http://irclog.wesnoth.org/ - IRC logs&lt;br /&gt;
&lt;br /&gt;
* FOSDEM&lt;br /&gt;
** [[Fosdem2008]]&lt;br /&gt;
** [[Fosdem2009]]&lt;br /&gt;
&lt;br /&gt;
* Google Summer of Code&lt;br /&gt;
** [[SummerOfCodeIdeas]] - Ideas for GSoC&lt;br /&gt;
** [[SoC_Information_for_Google]] - Our organization profile for Google&lt;br /&gt;
** [[SoC_People_to_bug_on_IRC]] - Who GSoC students can ask for help&lt;br /&gt;
&lt;br /&gt;
= Miscellaneous =&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30372</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30372"/>
		<updated>2009-05-01T21:07:49Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Communication, Feedback, Events */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Information =&lt;br /&gt;
* Links&lt;br /&gt;
** [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
** [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
* Coding Guidelines&lt;br /&gt;
** [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
** [[CodingStandards]] - for programmers&lt;br /&gt;
** [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
* Library documentation&lt;br /&gt;
** http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
= Tools and Packaging =&lt;br /&gt;
* Supporting Websites&lt;br /&gt;
** [[WesnothSVN]] - accessing the source code&lt;br /&gt;
** http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
** http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
* Compiling&lt;br /&gt;
** [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
* Packaging and Releasing&lt;br /&gt;
** [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
** [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
* Documentation&lt;br /&gt;
** [[Doxygen]] - Documentation generator&lt;br /&gt;
* More stuff&lt;br /&gt;
** [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
** [[MaintenanceTools]] WMLLint, WMLIndent and WMLScope&lt;br /&gt;
&lt;br /&gt;
= I want to start coding, what can i do? =&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
= Game - Create content =&lt;br /&gt;
* [[BuildingScenarios]] and related useful forum discussions: &lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4188 Beginning Campaign Development]&lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4301 A Balancing Act]&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
= Code documentation =&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
* AI&lt;br /&gt;
** [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
** [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* Themes&lt;br /&gt;
** [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* Multiplayer&lt;br /&gt;
** [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
&lt;br /&gt;
= Communication, Feedback, Events =&lt;br /&gt;
* Gna! links&lt;br /&gt;
** http://bugs.wesnoth.org/ - Gna! - bugs and feature requests&lt;br /&gt;
** http://patches.wesnoth.org/ - Gna! - patches&lt;br /&gt;
&lt;br /&gt;
* Mailing lists&lt;br /&gt;
** https://mail.gna.org/listinfo/wesnoth-dev/ - wesnoth-dev&lt;br /&gt;
** https://mail.gna.org/listinfo/wesnoth-commits/ - wesnoth-commits&lt;br /&gt;
&lt;br /&gt;
* IRC&lt;br /&gt;
** [irc://irc.wesnoth.org/#wesnoth-dev freenode/#wesnoth-dev] - IRC (alias to irc.freenode.net)&lt;br /&gt;
** http://irclog.wesnoth.org/ - IRC logs&lt;br /&gt;
&lt;br /&gt;
* FOSDEM&lt;br /&gt;
** [[Fosdem2008]]&lt;br /&gt;
** [[Fosdem2009]]&lt;br /&gt;
&lt;br /&gt;
* Google Summer of Code&lt;br /&gt;
** [[SummerOfCodeIdeas]] - Ideas for GSoC&lt;br /&gt;
** [[SoC_Information_for_Google]] - Our organization profile for Google&lt;br /&gt;
** [[SoC_People_to_bug_on_IRC]] - Who GSoC students can ask for help&lt;br /&gt;
&lt;br /&gt;
= Miscellaneous =&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30371</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30371"/>
		<updated>2009-05-01T20:57:29Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Communication, Feedback, Events */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Information =&lt;br /&gt;
* Links&lt;br /&gt;
** [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
** [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
* Coding Guidelines&lt;br /&gt;
** [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
** [[CodingStandards]] - for programmers&lt;br /&gt;
** [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
* Library documentation&lt;br /&gt;
** http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
= Tools and Packaging =&lt;br /&gt;
* Supporting Websites&lt;br /&gt;
** [[WesnothSVN]] - accessing the source code&lt;br /&gt;
** http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
** http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
* Compiling&lt;br /&gt;
** [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
* Packaging and Releasing&lt;br /&gt;
** [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
** [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
* Documentation&lt;br /&gt;
** [[Doxygen]] - Documentation generator&lt;br /&gt;
* More stuff&lt;br /&gt;
** [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
** [[MaintenanceTools]] WMLLint, WMLIndent and WMLScope&lt;br /&gt;
&lt;br /&gt;
= I want to start coding, what can i do? =&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
= Game - Create content =&lt;br /&gt;
* [[BuildingScenarios]] and related useful forum discussions: &lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4188 Beginning Campaign Development]&lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4301 A Balancing Act]&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
= Code documentation =&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
* AI&lt;br /&gt;
** [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
** [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* Themes&lt;br /&gt;
** [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* Multiplayer&lt;br /&gt;
** [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
&lt;br /&gt;
= Communication, Feedback, Events =&lt;br /&gt;
* Gna! links&lt;br /&gt;
** http://bugs.wesnoth.org/ - Gna! - bugs and feature requests&lt;br /&gt;
** http://patches.wesnoth.org/ - Gna! - patches&lt;br /&gt;
&lt;br /&gt;
* Mailing lists&lt;br /&gt;
** https://mail.gna.org/listinfo/wesnoth-dev/ - wesnoth-dev&lt;br /&gt;
** https://mail.gna.org/listinfo/wesnoth-commits/ - wesnoth-commits&lt;br /&gt;
&lt;br /&gt;
* IRC&lt;br /&gt;
** [irc://irc.wesnoth.org/#wesnoth-dev freenode/#wesnoth-dev] - IRC (alias to irc.freenode.net)&lt;br /&gt;
** http://irclog.wesnoth.org/ - IRC logs&lt;br /&gt;
&lt;br /&gt;
* FOSDEM&lt;br /&gt;
** [[Fosdem2008]]&lt;br /&gt;
** [[Fosdem2009]]&lt;br /&gt;
&lt;br /&gt;
* Google Summer of Code&lt;br /&gt;
** [SummerOfCodeIdeas Ideas for GSoC]&lt;br /&gt;
&lt;br /&gt;
= Miscellaneous =&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30370</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30370"/>
		<updated>2009-05-01T20:54:17Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Communication, Feedback, Events */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Information =&lt;br /&gt;
* Links&lt;br /&gt;
** [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
** [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
* Coding Guidelines&lt;br /&gt;
** [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
** [[CodingStandards]] - for programmers&lt;br /&gt;
** [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
* Library documentation&lt;br /&gt;
** http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
= Tools and Packaging =&lt;br /&gt;
* Supporting Websites&lt;br /&gt;
** [[WesnothSVN]] - accessing the source code&lt;br /&gt;
** http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
** http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
* Compiling&lt;br /&gt;
** [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
* Packaging and Releasing&lt;br /&gt;
** [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
** [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
* Documentation&lt;br /&gt;
** [[Doxygen]] - Documentation generator&lt;br /&gt;
* More stuff&lt;br /&gt;
** [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
** [[MaintenanceTools]] WMLLint, WMLIndent and WMLScope&lt;br /&gt;
&lt;br /&gt;
= I want to start coding, what can i do? =&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
= Game - Create content =&lt;br /&gt;
* [[BuildingScenarios]] and related useful forum discussions: &lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4188 Beginning Campaign Development]&lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4301 A Balancing Act]&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
= Code documentation =&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
* AI&lt;br /&gt;
** [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
** [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* Themes&lt;br /&gt;
** [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* Multiplayer&lt;br /&gt;
** [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
&lt;br /&gt;
= Communication, Feedback, Events =&lt;br /&gt;
* Gna! links&lt;br /&gt;
** http://bugs.wesnoth.org/ - Gna! - bugs and feature requests&lt;br /&gt;
** http://patches.wesnoth.org/ - Gna! - patches&lt;br /&gt;
&lt;br /&gt;
* Mailing lists&lt;br /&gt;
** https://mail.gna.org/listinfo/wesnoth-dev/ - wesnoth-dev&lt;br /&gt;
** https://mail.gna.org/listinfo/wesnoth-commits/ - wesnoth-commits&lt;br /&gt;
&lt;br /&gt;
* IRC&lt;br /&gt;
** [irc://irc.wesnoth.org/#wesnoth-dev freenode/#wesnoth-dev] - IRC (alias to irc.freenode.net)&lt;br /&gt;
** http://irclog.wesnoth.org/ - IRC logs&lt;br /&gt;
&lt;br /&gt;
* FOSDEM&lt;br /&gt;
** [[Fosdem2008]]&lt;br /&gt;
** [[Fosdem2009]]&lt;br /&gt;
&lt;br /&gt;
= Miscellaneous =&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30369</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30369"/>
		<updated>2009-05-01T20:52:29Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Communication, Feedback, Events */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Information =&lt;br /&gt;
* Links&lt;br /&gt;
** [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
** [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
* Coding Guidelines&lt;br /&gt;
** [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
** [[CodingStandards]] - for programmers&lt;br /&gt;
** [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
* Library documentation&lt;br /&gt;
** http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
= Tools and Packaging =&lt;br /&gt;
* Supporting Websites&lt;br /&gt;
** [[WesnothSVN]] - accessing the source code&lt;br /&gt;
** http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
** http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
* Compiling&lt;br /&gt;
** [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
* Packaging and Releasing&lt;br /&gt;
** [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
** [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
* Documentation&lt;br /&gt;
** [[Doxygen]] - Documentation generator&lt;br /&gt;
* More stuff&lt;br /&gt;
** [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
** [[MaintenanceTools]] WMLLint, WMLIndent and WMLScope&lt;br /&gt;
&lt;br /&gt;
= I want to start coding, what can i do? =&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
= Game - Create content =&lt;br /&gt;
* [[BuildingScenarios]] and related useful forum discussions: &lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4188 Beginning Campaign Development]&lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4301 A Balancing Act]&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
= Code documentation =&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
* AI&lt;br /&gt;
** [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
** [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* Themes&lt;br /&gt;
** [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* Multiplayer&lt;br /&gt;
** [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
&lt;br /&gt;
= Communication, Feedback, Events =&lt;br /&gt;
* Gna! links&lt;br /&gt;
** http://bugs.wesnoth.org/ - Gna! - bugs and feature requests&lt;br /&gt;
** http://patches.wesnoth.org/ - Gna! - patches&lt;br /&gt;
&lt;br /&gt;
* Mailing lists&lt;br /&gt;
** https://mail.gna.org/listinfo/wesnoth-dev/ - wesnoth-dev&lt;br /&gt;
** https://mail.gna.org/listinfo/wesnoth-commits/ - wesnoth-commits&lt;br /&gt;
&lt;br /&gt;
* IRC&lt;br /&gt;
** [irc://irc.wesnoth.org/#wesnoth-dev freenode/#wesnoth-dev] - IRC (alias to irc.freenode.net)&lt;br /&gt;
** http://irclog.wesnoth.org/ - IRC logs&lt;br /&gt;
&lt;br /&gt;
= Miscellaneous =&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30368</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30368"/>
		<updated>2009-05-01T20:51:58Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Code documentation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Information =&lt;br /&gt;
* Links&lt;br /&gt;
** [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
** [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
* Coding Guidelines&lt;br /&gt;
** [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
** [[CodingStandards]] - for programmers&lt;br /&gt;
** [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
* Library documentation&lt;br /&gt;
** http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
= Tools and Packaging =&lt;br /&gt;
* Supporting Websites&lt;br /&gt;
** [[WesnothSVN]] - accessing the source code&lt;br /&gt;
** http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
** http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
* Compiling&lt;br /&gt;
** [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
* Packaging and Releasing&lt;br /&gt;
** [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
** [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
* Documentation&lt;br /&gt;
** [[Doxygen]] - Documentation generator&lt;br /&gt;
* More stuff&lt;br /&gt;
** [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
** [[MaintenanceTools]] WMLLint, WMLIndent and WMLScope&lt;br /&gt;
&lt;br /&gt;
= I want to start coding, what can i do? =&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
= Game - Create content =&lt;br /&gt;
* [[BuildingScenarios]] and related useful forum discussions: &lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4188 Beginning Campaign Development]&lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4301 A Balancing Act]&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
= Code documentation =&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
* AI&lt;br /&gt;
** [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
** [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* Themes&lt;br /&gt;
** [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* Multiplayer&lt;br /&gt;
** [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
&lt;br /&gt;
= Communication, Feedback, Events =&lt;br /&gt;
== Gna! links ==&lt;br /&gt;
* http://bugs.wesnoth.org/ - Gna! - bugs and feature requests&lt;br /&gt;
* http://patches.wesnoth.org/ - Gna! - patches&lt;br /&gt;
&lt;br /&gt;
== Mailing lists ==&lt;br /&gt;
* https://mail.gna.org/listinfo/wesnoth-dev/ - wesnoth-dev&lt;br /&gt;
* https://mail.gna.org/listinfo/wesnoth-commits/ - wesnoth-commits&lt;br /&gt;
&lt;br /&gt;
== IRC ==&lt;br /&gt;
* [irc://irc.wesnoth.org/#wesnoth-dev freenode/#wesnoth-dev] - IRC (alias to irc.freenode.net)&lt;br /&gt;
* http://irclog.wesnoth.org/ - IRC logs&lt;br /&gt;
&lt;br /&gt;
= Miscellaneous =&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30367</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30367"/>
		<updated>2009-05-01T20:51:08Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Tools and Packaging */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Information =&lt;br /&gt;
* Links&lt;br /&gt;
** [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
** [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
* Coding Guidelines&lt;br /&gt;
** [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
** [[CodingStandards]] - for programmers&lt;br /&gt;
** [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
* Library documentation&lt;br /&gt;
** http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
= Tools and Packaging =&lt;br /&gt;
* Supporting Websites&lt;br /&gt;
** [[WesnothSVN]] - accessing the source code&lt;br /&gt;
** http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
** http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
* Compiling&lt;br /&gt;
** [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
* Packaging and Releasing&lt;br /&gt;
** [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
** [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
* Documentation&lt;br /&gt;
** [[Doxygen]] - Documentation generator&lt;br /&gt;
* More stuff&lt;br /&gt;
** [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
** [[MaintenanceTools]] WMLLint, WMLIndent and WMLScope&lt;br /&gt;
&lt;br /&gt;
= I want to start coding, what can i do? =&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
= Game - Create content =&lt;br /&gt;
* [[BuildingScenarios]] and related useful forum discussions: &lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4188 Beginning Campaign Development]&lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4301 A Balancing Act]&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
= Code documentation =&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
== AI ==&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
== Themes ==&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
== Multiplayer ==&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
&lt;br /&gt;
= Communication, Feedback, Events =&lt;br /&gt;
== Gna! links ==&lt;br /&gt;
* http://bugs.wesnoth.org/ - Gna! - bugs and feature requests&lt;br /&gt;
* http://patches.wesnoth.org/ - Gna! - patches&lt;br /&gt;
&lt;br /&gt;
== Mailing lists ==&lt;br /&gt;
* https://mail.gna.org/listinfo/wesnoth-dev/ - wesnoth-dev&lt;br /&gt;
* https://mail.gna.org/listinfo/wesnoth-commits/ - wesnoth-commits&lt;br /&gt;
&lt;br /&gt;
== IRC ==&lt;br /&gt;
* [irc://irc.wesnoth.org/#wesnoth-dev freenode/#wesnoth-dev] - IRC (alias to irc.freenode.net)&lt;br /&gt;
* http://irclog.wesnoth.org/ - IRC logs&lt;br /&gt;
&lt;br /&gt;
= Miscellaneous =&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30366</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30366"/>
		<updated>2009-05-01T20:50:01Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* General Information */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Information =&lt;br /&gt;
* Links&lt;br /&gt;
** [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
** [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
* Coding Guidelines&lt;br /&gt;
** [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
** [[CodingStandards]] - for programmers&lt;br /&gt;
** [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
* Library documentation&lt;br /&gt;
** http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
= Tools and Packaging =&lt;br /&gt;
== Supporting Websites ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
* http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
== Compiling ==&lt;br /&gt;
* [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
== Packaging and Releasing ==&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
== Documentation ==&lt;br /&gt;
* [[Doxygen]] - Documentation generator&lt;br /&gt;
== More stuff ==&lt;br /&gt;
* [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
* [[MaintenanceTools]] WMLLint, WMLIndent and WMLScope&lt;br /&gt;
&lt;br /&gt;
= I want to start coding, what can i do? =&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
= Game - Create content =&lt;br /&gt;
* [[BuildingScenarios]] and related useful forum discussions: &lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4188 Beginning Campaign Development]&lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4301 A Balancing Act]&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
= Code documentation =&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
== AI ==&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
== Themes ==&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
== Multiplayer ==&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
&lt;br /&gt;
= Communication, Feedback, Events =&lt;br /&gt;
== Gna! links ==&lt;br /&gt;
* http://bugs.wesnoth.org/ - Gna! - bugs and feature requests&lt;br /&gt;
* http://patches.wesnoth.org/ - Gna! - patches&lt;br /&gt;
&lt;br /&gt;
== Mailing lists ==&lt;br /&gt;
* https://mail.gna.org/listinfo/wesnoth-dev/ - wesnoth-dev&lt;br /&gt;
* https://mail.gna.org/listinfo/wesnoth-commits/ - wesnoth-commits&lt;br /&gt;
&lt;br /&gt;
== IRC ==&lt;br /&gt;
* [irc://irc.wesnoth.org/#wesnoth-dev freenode/#wesnoth-dev] - IRC (alias to irc.freenode.net)&lt;br /&gt;
* http://irclog.wesnoth.org/ - IRC logs&lt;br /&gt;
&lt;br /&gt;
= Miscellaneous =&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30365</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30365"/>
		<updated>2009-05-01T20:48:28Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Information =&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== Coding Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
== STL documentation ==&lt;br /&gt;
* http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
= Tools and Packaging =&lt;br /&gt;
== Supporting Websites ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
* http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
== Compiling ==&lt;br /&gt;
* [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
== Packaging and Releasing ==&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
== Documentation ==&lt;br /&gt;
* [[Doxygen]] - Documentation generator&lt;br /&gt;
== More stuff ==&lt;br /&gt;
* [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
* [[MaintenanceTools]] WMLLint, WMLIndent and WMLScope&lt;br /&gt;
&lt;br /&gt;
= I want to start coding, what can i do? =&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
= Game - Create content =&lt;br /&gt;
* [[BuildingScenarios]] and related useful forum discussions: &lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4188 Beginning Campaign Development]&lt;br /&gt;
** [http://www.wesnoth.org/forum/viewtopic.php?t=4301 A Balancing Act]&lt;br /&gt;
* [[ReferenceWML]]&lt;br /&gt;
&lt;br /&gt;
= Code documentation =&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
== AI ==&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
== Themes ==&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
== Multiplayer ==&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
&lt;br /&gt;
= Communication, Feedback, Events =&lt;br /&gt;
== Gna! links ==&lt;br /&gt;
* http://bugs.wesnoth.org/ - Gna! - bugs and feature requests&lt;br /&gt;
* http://patches.wesnoth.org/ - Gna! - patches&lt;br /&gt;
&lt;br /&gt;
== Mailing lists ==&lt;br /&gt;
* https://mail.gna.org/listinfo/wesnoth-dev/ - wesnoth-dev&lt;br /&gt;
* https://mail.gna.org/listinfo/wesnoth-commits/ - wesnoth-commits&lt;br /&gt;
&lt;br /&gt;
== IRC ==&lt;br /&gt;
* [irc://irc.wesnoth.org/#wesnoth-dev freenode/#wesnoth-dev] - IRC (alias to irc.freenode.net)&lt;br /&gt;
* http://irclog.wesnoth.org/ - IRC logs&lt;br /&gt;
&lt;br /&gt;
= Miscellaneous =&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30364</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30364"/>
		<updated>2009-05-01T20:45:46Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* IRC */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Information =&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== Coding Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
== STL documentation ==&lt;br /&gt;
* http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
= Tools and Packaging =&lt;br /&gt;
== Supporting Websites ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
* http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
== Compiling ==&lt;br /&gt;
* [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
== Packaging and Releasing ==&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
== Documentation ==&lt;br /&gt;
* [[Doxygen]] - Documentation generator&lt;br /&gt;
== More stuff ==&lt;br /&gt;
* [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
* [[MaintenanceTools]] WMLLint, WMLIndent and WMLScope&lt;br /&gt;
&lt;br /&gt;
= I want to start coding, what can i do? =&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
= Code documentation =&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
== AI ==&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
== Themes ==&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
== Multiplayer ==&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
&lt;br /&gt;
= Communication, Feedback, Events =&lt;br /&gt;
== Gna! links ==&lt;br /&gt;
* http://bugs.wesnoth.org/ - Gna! - bugs and feature requests&lt;br /&gt;
* http://patches.wesnoth.org/ - Gna! - patches&lt;br /&gt;
&lt;br /&gt;
== Mailing lists ==&lt;br /&gt;
* https://mail.gna.org/listinfo/wesnoth-dev/ - wesnoth-dev&lt;br /&gt;
* https://mail.gna.org/listinfo/wesnoth-commits/ - wesnoth-commits&lt;br /&gt;
&lt;br /&gt;
== IRC ==&lt;br /&gt;
* [irc://irc.wesnoth.org/#wesnoth-dev freenode/#wesnoth-dev] - IRC (alias to irc.freenode.net)&lt;br /&gt;
* http://irclog.wesnoth.org/ - IRC logs&lt;br /&gt;
&lt;br /&gt;
= Miscellaneous =&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30363</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30363"/>
		<updated>2009-05-01T20:45:12Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Mailing lists */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Information =&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== Coding Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
== STL documentation ==&lt;br /&gt;
* http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
= Tools and Packaging =&lt;br /&gt;
== Supporting Websites ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
* http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
== Compiling ==&lt;br /&gt;
* [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
== Packaging and Releasing ==&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
== Documentation ==&lt;br /&gt;
* [[Doxygen]] - Documentation generator&lt;br /&gt;
== More stuff ==&lt;br /&gt;
* [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
* [[MaintenanceTools]] WMLLint, WMLIndent and WMLScope&lt;br /&gt;
&lt;br /&gt;
= I want to start coding, what can i do? =&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
= Code documentation =&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
== AI ==&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
== Themes ==&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
== Multiplayer ==&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
&lt;br /&gt;
= Communication, Feedback, Events =&lt;br /&gt;
== Gna! links ==&lt;br /&gt;
* http://bugs.wesnoth.org/ - Gna! - bugs and feature requests&lt;br /&gt;
* http://patches.wesnoth.org/ - Gna! - patches&lt;br /&gt;
&lt;br /&gt;
== Mailing lists ==&lt;br /&gt;
* https://mail.gna.org/listinfo/wesnoth-dev/ - wesnoth-dev&lt;br /&gt;
* https://mail.gna.org/listinfo/wesnoth-commits/ - wesnoth-commits&lt;br /&gt;
&lt;br /&gt;
== IRC ==&lt;br /&gt;
* IRC: [irc://irc.wesnoth.org/#wesnoth-dev freenode/#wesnoth-dev] (alias to irc.freenode.net)&lt;br /&gt;
* IRC logs - http://irclog.wesnoth.org/&lt;br /&gt;
&lt;br /&gt;
= Miscellaneous =&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30362</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30362"/>
		<updated>2009-05-01T20:44:51Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Gna! links */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Information =&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== Coding Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
== STL documentation ==&lt;br /&gt;
* http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
= Tools and Packaging =&lt;br /&gt;
== Supporting Websites ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
* http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
== Compiling ==&lt;br /&gt;
* [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
== Packaging and Releasing ==&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
== Documentation ==&lt;br /&gt;
* [[Doxygen]] - Documentation generator&lt;br /&gt;
== More stuff ==&lt;br /&gt;
* [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
* [[MaintenanceTools]] WMLLint, WMLIndent and WMLScope&lt;br /&gt;
&lt;br /&gt;
= I want to start coding, what can i do? =&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
= Code documentation =&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
== AI ==&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
== Themes ==&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
== Multiplayer ==&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
&lt;br /&gt;
= Communication, Feedback, Events =&lt;br /&gt;
== Gna! links ==&lt;br /&gt;
* http://bugs.wesnoth.org/ - Gna! - bugs and feature requests&lt;br /&gt;
* http://patches.wesnoth.org/ - Gna! - patches&lt;br /&gt;
&lt;br /&gt;
== Mailing lists ==&lt;br /&gt;
* wesnoth-dev - https://mail.gna.org/listinfo/wesnoth-dev/&lt;br /&gt;
* wesnoth-commits - https://mail.gna.org/listinfo/wesnoth-commits/&lt;br /&gt;
&lt;br /&gt;
== IRC ==&lt;br /&gt;
* IRC: [irc://irc.wesnoth.org/#wesnoth-dev freenode/#wesnoth-dev] (alias to irc.freenode.net)&lt;br /&gt;
* IRC logs - http://irclog.wesnoth.org/&lt;br /&gt;
&lt;br /&gt;
= Miscellaneous =&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30361</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30361"/>
		<updated>2009-05-01T20:43:55Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Communication, Feedback */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Information =&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== Coding Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
== STL documentation ==&lt;br /&gt;
* http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
= Tools and Packaging =&lt;br /&gt;
== Supporting Websites ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
* http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
== Compiling ==&lt;br /&gt;
* [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
== Packaging and Releasing ==&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
== Documentation ==&lt;br /&gt;
* [[Doxygen]] - Documentation generator&lt;br /&gt;
== More stuff ==&lt;br /&gt;
* [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
* [[MaintenanceTools]] WMLLint, WMLIndent and WMLScope&lt;br /&gt;
&lt;br /&gt;
= I want to start coding, what can i do? =&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
= Code documentation =&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
== AI ==&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
== Themes ==&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
== Multiplayer ==&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
&lt;br /&gt;
= Communication, Feedback, Events =&lt;br /&gt;
== Gna! links ==&lt;br /&gt;
* Gna! - bugs and feature requests - http://bugs.wesnoth.org/&lt;br /&gt;
* Gna! - patches - http://patches.wesnoth.org/&lt;br /&gt;
&lt;br /&gt;
== Mailing lists ==&lt;br /&gt;
* wesnoth-dev - https://mail.gna.org/listinfo/wesnoth-dev/&lt;br /&gt;
* wesnoth-commits - https://mail.gna.org/listinfo/wesnoth-commits/&lt;br /&gt;
&lt;br /&gt;
== IRC ==&lt;br /&gt;
* IRC: [irc://irc.wesnoth.org/#wesnoth-dev freenode/#wesnoth-dev] (alias to irc.freenode.net)&lt;br /&gt;
* IRC logs - http://irclog.wesnoth.org/&lt;br /&gt;
&lt;br /&gt;
= Miscellaneous =&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30360</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30360"/>
		<updated>2009-05-01T20:43:20Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Information =&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== Coding Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
== STL documentation ==&lt;br /&gt;
* http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
= Tools and Packaging =&lt;br /&gt;
== Supporting Websites ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
* http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
== Compiling ==&lt;br /&gt;
* [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
== Packaging and Releasing ==&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
== Documentation ==&lt;br /&gt;
* [[Doxygen]] - Documentation generator&lt;br /&gt;
== More stuff ==&lt;br /&gt;
* [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
* [[MaintenanceTools]] WMLLint, WMLIndent and WMLScope&lt;br /&gt;
&lt;br /&gt;
= I want to start coding, what can i do? =&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
= Code documentation =&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
== AI ==&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
== Themes ==&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
== Multiplayer ==&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
&lt;br /&gt;
= Communication, Feedback =&lt;br /&gt;
== Gna! links ==&lt;br /&gt;
* Gna! - bugs and feature requests - http://bugs.wesnoth.org/&lt;br /&gt;
* Gna! - patches - http://patches.wesnoth.org/&lt;br /&gt;
&lt;br /&gt;
== Mailing lists ==&lt;br /&gt;
* wesnoth-dev - https://mail.gna.org/listinfo/wesnoth-dev/&lt;br /&gt;
* wesnoth-commits - https://mail.gna.org/listinfo/wesnoth-commits/&lt;br /&gt;
&lt;br /&gt;
== IRC ==&lt;br /&gt;
* IRC: [irc://irc.wesnoth.org/#wesnoth-dev freenode/#wesnoth-dev] (alias to irc.freenode.net)&lt;br /&gt;
* IRC logs - http://irclog.wesnoth.org/&lt;br /&gt;
&lt;br /&gt;
= Miscellaneous =&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30359</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30359"/>
		<updated>2009-05-01T20:41:09Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* More stuff */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Information =&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== Coding Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
== STL documentation ==&lt;br /&gt;
* http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
= Tools and Packaging =&lt;br /&gt;
== Supporting Websites ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
* http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
== Compiling ==&lt;br /&gt;
* [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
== Packaging and Releasing ==&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
== Documentation ==&lt;br /&gt;
* [[Doxygen]] - Documentation generator&lt;br /&gt;
== More stuff ==&lt;br /&gt;
* [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
* [[MaintenanceTools]] WMLLint, WMLIndent and WMLScope&lt;br /&gt;
&lt;br /&gt;
= I want to start coding, what can i do? =&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
= Code documentation =&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
== AI ==&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
== Themes ==&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
== Multiplayer ==&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
&lt;br /&gt;
== Miscellaneous ==&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30358</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30358"/>
		<updated>2009-05-01T20:39:02Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Code documentation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Information =&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== Coding Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
== STL documentation ==&lt;br /&gt;
* http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
= Tools and Packaging =&lt;br /&gt;
== Supporting Websites ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
* http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
== Compiling ==&lt;br /&gt;
* [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
== Packaging and Releasing ==&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
== Documentation ==&lt;br /&gt;
* [[Doxygen]] - Documentation generator&lt;br /&gt;
== More stuff ==&lt;br /&gt;
* [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
&lt;br /&gt;
= I want to start coding, what can i do? =&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
= Code documentation =&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
== AI ==&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
== Themes ==&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
== Multiplayer ==&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
&lt;br /&gt;
== Miscellaneous ==&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30357</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30357"/>
		<updated>2009-05-01T20:36:27Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= General Information =&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== Coding Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
== STL documentation ==&lt;br /&gt;
* http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
= Tools and Packaging =&lt;br /&gt;
== Supporting Websites ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
* http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
== Compiling ==&lt;br /&gt;
* [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
== Packaging and Releasing ==&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
== Documentation ==&lt;br /&gt;
* [[Doxygen]] - Documentation generator&lt;br /&gt;
== More stuff ==&lt;br /&gt;
* [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
&lt;br /&gt;
= I want to start coding, what can i do? =&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
= Code documentation =&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
&lt;br /&gt;
== Miscellaneous ==&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30356</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30356"/>
		<updated>2009-05-01T20:31:28Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Tools and Packaging */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Developers Home&amp;lt;/h1&amp;gt;&lt;br /&gt;
If you want to program for wesnoth, this is the page to look at.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== General Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
* http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
== Tools and Packaging ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
* http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
* [[Doxygen]] - Documentation generator&lt;br /&gt;
* http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
* [[ExternalUtilities]] (Wercator, CampGen, wmllint, etc.)&lt;br /&gt;
&lt;br /&gt;
== I want to start coding, what can i do? ==&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
== Code documentation ==&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
&lt;br /&gt;
== Miscellaneous ==&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30355</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30355"/>
		<updated>2009-05-01T20:30:24Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Tools and Packaging */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Developers Home&amp;lt;/h1&amp;gt;&lt;br /&gt;
If you want to program for wesnoth, this is the page to look at.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== General Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
* http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
== Tools and Packaging ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
* http://websvn.wesnoth.org/ Web-Access to svn - Gna! - websvn - &lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
* [[Doxygen]] - Documentation generator&lt;br /&gt;
* http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
&lt;br /&gt;
== I want to start coding, what can i do? ==&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
== Code documentation ==&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
&lt;br /&gt;
== Miscellaneous ==&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30354</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30354"/>
		<updated>2009-05-01T20:29:33Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Developers Home&amp;lt;/h1&amp;gt;&lt;br /&gt;
If you want to program for wesnoth, this is the page to look at.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== General Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
* http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
== Tools and Packaging ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
* [[Doxygen]] - Documentation generator&lt;br /&gt;
* http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
&lt;br /&gt;
== I want to start coding, what can i do? ==&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
== Code documentation ==&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;br /&gt;
&lt;br /&gt;
== Miscellaneous ==&lt;br /&gt;
* [[DebugMode]] and [[CommandMode]] - in game debugging commands&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30353</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30353"/>
		<updated>2009-05-01T20:28:13Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* General Guidelines */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Developers Home&amp;lt;/h1&amp;gt;&lt;br /&gt;
If you want to program for wesnoth, this is the page to look at.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== General Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
* http://www.sgi.com/tech/stl/ - Standard Template Library&lt;br /&gt;
&lt;br /&gt;
== Tools and Packaging ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
* [[Doxygen]] - Documentation generator&lt;br /&gt;
* http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
&lt;br /&gt;
== I want to start coding, what can i do? ==&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
== Code documentation ==&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30352</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30352"/>
		<updated>2009-05-01T20:27:20Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Tools and Packaging */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Developers Home&amp;lt;/h1&amp;gt;&lt;br /&gt;
If you want to program for wesnoth, this is the page to look at.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== General Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
== Tools and Packaging ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* [[CompilingWesnoth]] - how to compile Battle for Wesnoth (it's not hard)&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
* [[Doxygen]] - Documentation generator&lt;br /&gt;
* http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
&lt;br /&gt;
== I want to start coding, what can i do? ==&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
== Code documentation ==&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30351</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30351"/>
		<updated>2009-05-01T20:26:30Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Tools and Packaging */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Developers Home&amp;lt;/h1&amp;gt;&lt;br /&gt;
If you want to program for wesnoth, this is the page to look at.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== General Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
== Tools and Packaging ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
* [[Doxygen]] - Documentation generator&lt;br /&gt;
* http://gettext.wesnoth.org/ - gettext status&lt;br /&gt;
&lt;br /&gt;
== I want to start coding, what can i do? ==&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
== Code documentation ==&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30350</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30350"/>
		<updated>2009-05-01T20:24:14Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Developers Home&amp;lt;/h1&amp;gt;&lt;br /&gt;
If you want to program for wesnoth, this is the page to look at.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== General Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
== Tools and Packaging ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
* [[Doxygen]] - Documentation generator&lt;br /&gt;
&lt;br /&gt;
== I want to start coding, what can i do? ==&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
== Code documentation ==&lt;br /&gt;
* http://devdocs.wesnoth.org - generated code documentation&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30349</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30349"/>
		<updated>2009-05-01T20:23:54Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Code documentation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Developers Home&amp;lt;/h1&amp;gt;&lt;br /&gt;
If you want to program for wesnoth, this is the page to look at.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== General Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
== Tools and Packaging ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
* [[Doxygen]] - Documentation generator&lt;br /&gt;
&lt;br /&gt;
== I want to start coding, what can i do? ==&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
== Code documentation ==&lt;br /&gt;
* generated code documentation - http://devdocs.wesnoth.org&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30348</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30348"/>
		<updated>2009-05-01T20:23:00Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Tools and Packaging */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Developers Home&amp;lt;/h1&amp;gt;&lt;br /&gt;
If you want to program for wesnoth, this is the page to look at.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== General Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
== Tools and Packaging ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
* [[Doxygen]] - Documentation generator&lt;br /&gt;
&lt;br /&gt;
== I want to start coding, what can i do? ==&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
== Code documentation ==&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30347</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30347"/>
		<updated>2009-05-01T20:22:29Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Tools and Packaging */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Developers Home&amp;lt;/h1&amp;gt;&lt;br /&gt;
If you want to program for wesnoth, this is the page to look at.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== General Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
== Tools and Packaging ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
* Documentation generator [[Doxygen]]&lt;br /&gt;
&lt;br /&gt;
== I want to start coding, what can i do? ==&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
== Code documentation ==&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30346</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30346"/>
		<updated>2009-05-01T20:21:45Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Links */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Developers Home&amp;lt;/h1&amp;gt;&lt;br /&gt;
If you want to program for wesnoth, this is the page to look at.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth Latest commits] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== General Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
== Tools and Packaging ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
&lt;br /&gt;
== I want to start coding, what can i do? ==&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
== Code documentation ==&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30345</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30345"/>
		<updated>2009-05-01T20:20:51Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Links */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Developers Home&amp;lt;/h1&amp;gt;&lt;br /&gt;
If you want to program for wesnoth, this is the page to look at.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* [http://cia.vc/stats/project/wesnoth] - Up-to-date commit messages&lt;br /&gt;
&lt;br /&gt;
== General Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
== Tools and Packaging ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
&lt;br /&gt;
== I want to start coding, what can i do? ==&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
== Code documentation ==&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30344</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30344"/>
		<updated>2009-05-01T20:20:18Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Links */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Developers Home&amp;lt;/h1&amp;gt;&lt;br /&gt;
If you want to program for wesnoth, this is the page to look at.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
* Up-to-date commit messages : http://cia.vc/stats/project/wesnoth&lt;br /&gt;
&lt;br /&gt;
== General Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
== Tools and Packaging ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
&lt;br /&gt;
== I want to start coding, what can i do? ==&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
== Code documentation ==&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30343</id>
		<title>DevelopersHome</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=DevelopersHome&amp;diff=30343"/>
		<updated>2009-05-01T20:18:59Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: New page: &amp;lt;h1&amp;gt;Developers Home&amp;lt;/h1&amp;gt; If you want to program for wesnoth, this is the page to look at.  == Links == * DeveloperResources - useful links * [http://changelog.wesnoth.org Changelog] - ...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Developers Home&amp;lt;/h1&amp;gt;&lt;br /&gt;
If you want to program for wesnoth, this is the page to look at.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [[DeveloperResources]] - useful links&lt;br /&gt;
* [http://changelog.wesnoth.org Changelog] - the most recent changes made to the game&lt;br /&gt;
&lt;br /&gt;
== General Guidelines ==&lt;br /&gt;
* [[HackingWesnoth]] - guide for programmers&lt;br /&gt;
* [[CodingStandards]] - for programmers&lt;br /&gt;
* [[DeveloperGuide]] - for those who received SVN commit rights&lt;br /&gt;
&lt;br /&gt;
== Tools and Packaging ==&lt;br /&gt;
* [[WesnothSVN]] - accessing the source code&lt;br /&gt;
* [[ReleasingWesnoth]] - steps to follow to release a new version&lt;br /&gt;
* [[WesnothPackagersGuide]] - guidelines for packaging Wesnoth for different platforms&lt;br /&gt;
&lt;br /&gt;
== I want to start coding, what can i do? ==&lt;br /&gt;
* [[EasyCoding]] - Bugs and features that are easy to implement for new coders&lt;br /&gt;
* [[NotSoEasyCoding]] - Bugs and features which are doable but lacking someone working on them&lt;br /&gt;
&lt;br /&gt;
== Code documentation ==&lt;br /&gt;
* [http://www.wesnoth.org/units/trunk/animations.html Missing unit animations] - what's available and what's missing&lt;br /&gt;
* [[WritingYourOwnAI]] - write a C++ plugin&lt;br /&gt;
* [[FormulaAI]] - Guide to the experimental formula AI branch&lt;br /&gt;
* [[ThemeSystem]] - customizing the screen layout for the game and the editor&lt;br /&gt;
* [[WesnothdDesign]] - Guide to the design of wesnothd, the multiplayer server.&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=EasyCoding&amp;diff=30316</id>
		<title>EasyCoding</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=EasyCoding&amp;diff=30316"/>
		<updated>2009-04-29T21:15:48Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Savegame related stuff */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Foreword ==&lt;br /&gt;
This page is here to document easy to do coding tasks. It is not here to double the feature request database, and should only be filled by people that know the code well enough to judge the difficulty of a given task. &lt;br /&gt;
&lt;br /&gt;
If you are such a person, you should feel free to edit this page.&lt;br /&gt;
&lt;br /&gt;
If you're not, you should post a feature request and discuss your idea on the forum or IRC. A coder with better knowledge of the code might give you the green light to add your feature here.&lt;br /&gt;
&lt;br /&gt;
Anybody should feel free to add &amp;quot;clues&amp;quot; to any tasks, that is entry points, traps to avoid, person to contact to discuss and so on.&lt;br /&gt;
&lt;br /&gt;
If you plan to work on a feature, write your name at the bottom of the feature, with the date. Note that if you are too long at working on a feature I'll &amp;quot;free&amp;quot; it back (that is if you're not working on it. If you have problems implementing it, just tell us....)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--[[User:Boucman|Boucman]] 20:48, 3 October 2006 (CEST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Since bugs are sometimes a good opportunity to get a first idea of the code, i will add some here that are easy to fix as soon as i stumble upon them (the one i had in mind is fixed already ;-).&lt;br /&gt;
&lt;br /&gt;
--Yogi Bear, 28 February 2008&lt;br /&gt;
&lt;br /&gt;
== MP related features ==&lt;br /&gt;
&lt;br /&gt;
=== Use different font for in-game chat ===&lt;br /&gt;
Since commas and dots are apparently hard to tell apart. As per FR #7470 [https://gna.org/bugs/?7470]&lt;br /&gt;
&lt;br /&gt;
== WML related features ==&lt;br /&gt;
&lt;br /&gt;
=== WML configurable village income / upkeep ===&lt;br /&gt;
Preferably as a [scenario], [side] or [campaign] keys. As per FR #6301 [https://gna.org/bugs/?6301]. Patch submitted: [https://gna.org/patch/index.php?1162] (gabba)&lt;br /&gt;
&lt;br /&gt;
=== Add support of [if] for [scenario] ===&lt;br /&gt;
As per FR #4539 [https://gna.org/bugs/?4539]&lt;br /&gt;
&lt;br /&gt;
=== Make [have_unit] optionaly use full SUF ===&lt;br /&gt;
[have_unit] by default uses SUF but does not apply it to recall list. Introduce an optional key that will allow to lift that limitation.&lt;br /&gt;
&lt;br /&gt;
=== Side-specific results ===&lt;br /&gt;
Giving result=defeat or result=victory for specific sides. ([http://gna.org/bugs/index.php?4960 FR #4960]) -- [[User:dlr365|dlr365]] -- patch submitted [https://gna.org/bugs/index.php?4960]&lt;br /&gt;
&lt;br /&gt;
=== Support for leaderless multiplayergames ===&lt;br /&gt;
Add support for the WML key victory_when_enemies_defeated= in the scenario tag during multiplayergames. ([https://gna.org/bugs/index.php?8106 FR #8106])&lt;br /&gt;
&lt;br /&gt;
=== Support for standalone multiplayer scenarios ===&lt;br /&gt;
There used to be support for standalone scenarios in the userdata tree, in reorganising the trees this feature got lost and an add-on is now required to add a scenario.&lt;br /&gt;
Re-add this feature. It is probably a good idea to mirror the mainline multiplayer tree.&lt;br /&gt;
&lt;br /&gt;
=== Other Ideas ===&lt;br /&gt;
See [[FutureWML]]; some ideas there are easier than others.&lt;br /&gt;
&lt;br /&gt;
== Improvements to FormulaAI ==&lt;br /&gt;
&lt;br /&gt;
Add new formula functions, or minor improvements to the formula language. Make it easier to debug the formula language.&lt;br /&gt;
&lt;br /&gt;
Please discuss these with Dragonking, Sirp or Boucman&lt;br /&gt;
&lt;br /&gt;
Use [[AI_Arena]] for testing custom formulas.&lt;br /&gt;
&lt;br /&gt;
=== Poisoning Improvement ===&lt;br /&gt;
&lt;br /&gt;
Writing a formula that will make units with poison attacks prioritize their targets to spead poison as much as possible, avoiding already poisoned units and other useless targets&lt;br /&gt;
&lt;br /&gt;
=== About to level formula ===&lt;br /&gt;
&lt;br /&gt;
Writing a formula that would handle units with only a few XP left to level and have them fight accordingly (most likely to kill or hit depending on XP needed, taking into account target's level)&lt;br /&gt;
&lt;br /&gt;
=== Healer improvements ===&lt;br /&gt;
&lt;br /&gt;
Handle units with healing power, moving them at places where they can provide the most healing&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Leader improvements ===&lt;br /&gt;
&lt;br /&gt;
A bit more complicated : special handling of units with leadership to have them support units. Only do it if it actually is usefull (less hits needed to kill the unit) and ability to help multiple units in a single turn (assuming enough MP)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Berserker improvements ===&lt;br /&gt;
&lt;br /&gt;
The default AI's strategy of attacking as much as possible is very bad with berserker... A simple AI that would prevent the berserker from attacking (and keeping him close to fight without being exposed) and attack when the chance to kill is high enough would be an interesting addition&lt;br /&gt;
&lt;br /&gt;
=== Debugging help ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;* provide a way for a formula to have a text float over hex (for debugging purpose).&amp;lt;/s&amp;gt; done by [[SummerOfCodeProposal_AI_Improvement_Crab|Crab]], patch submitted [https://gna.org/bugs/?13230]&lt;br /&gt;
* in debug mode, have all AI move print their name in the log&lt;br /&gt;
&lt;br /&gt;
=== New type of candidate moves : Global ===&lt;br /&gt;
 &lt;br /&gt;
to be called only once with no implicit variable&lt;br /&gt;
&lt;br /&gt;
== GUI related features ==&lt;br /&gt;
-------------------&lt;br /&gt;
&lt;br /&gt;
Note at the moment Mordante is working on a new GUI system, these &lt;br /&gt;
changes will probably affect the way these items need to be implemented.&lt;br /&gt;
Contact Mordante on IRC before starting to work on these.&lt;br /&gt;
  &lt;br /&gt;
--[[User:SkeletonCrew|SkeletonCrew]] 14:04, 9 March 2008 (EDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Theme Changes ===&lt;br /&gt;
&lt;br /&gt;
* allow custom themes to display values of WML variables ([http://gna.org/bugs/index.php?6209 FR #6209])&lt;br /&gt;
* hide the hourglass item from the statusbar when there is no timer&lt;br /&gt;
&lt;br /&gt;
=== Widget Changes ===&lt;br /&gt;
* show side number, name and team association information in the status table &lt;br /&gt;
* make games sortable in the lobby (open slots, total number of players, era, XP modifier, gold per village, fog/shroud) &lt;br /&gt;
* input history (chat, commands, ..) - note: rujasu is working on this feature&lt;br /&gt;
&lt;br /&gt;
== GUI2 related features ==&lt;br /&gt;
GUI2 is the new gui engine Mordante/SkeletonCrew is working on. &lt;br /&gt;
* Information on the wiki can be found here http://www.wesnoth.org/wiki/GUIToolkit&lt;br /&gt;
* The source code is under src/gui/&lt;br /&gt;
* The configuration config files are under data/gui/default&lt;br /&gt;
&lt;br /&gt;
Some tasks need the --new-widgets since the code is only shown in the experimental mode. Tasks which need this switch have the * in the title.&lt;br /&gt;
&lt;br /&gt;
=== Generic yes/no ok/cancel dialog ===&lt;br /&gt;
There's already a generic OK dialog &lt;br /&gt;
* src/gui/dialogs/message.[h|c]pp&lt;br /&gt;
* data/gui/default/window/message.cfg&lt;br /&gt;
&lt;br /&gt;
This dialog should have the option to show a cancel button as well and also let the caller of the dialog determine the text of the button. Maybe more buttons (4 in total) can be added to make the dialog more flexible.&lt;br /&gt;
&lt;br /&gt;
=== * Minimap ===&lt;br /&gt;
The minimap widget has already been made but is broken.&lt;br /&gt;
* src/gui/widgets/minimap.[c|h]pp&lt;br /&gt;
&lt;br /&gt;
The drawing code has been rewritten, but this widget hasn't been updated it's used in the MP connection dialog (which needs more work).&lt;br /&gt;
&lt;br /&gt;
=== * Savegame dialog ===&lt;br /&gt;
This is a new dialog to write and requires the minimap code to be fixed first. The dialog should mimic the current dialog. Sorting of a listbox and the proper alignment of the columns is not important (the engine doesn't support this yet). The code should only be used when --new-widgets is used as start switch since we're in a feature freeze at the moment.&lt;br /&gt;
&lt;br /&gt;
=== * Title screen ===&lt;br /&gt;
A start has been made for the new titlescreen&lt;br /&gt;
* src/gui/dialogs/title_screen.[c|h]pp&lt;br /&gt;
* data/gui/default/window/title_screen.cfg&lt;br /&gt;
This should be improved to include the buttons and alignment of the current title screen. The 'roll-over' image is not part of this task.&lt;br /&gt;
&lt;br /&gt;
=== Arrow keys for the slider ===&lt;br /&gt;
There's a new slider widget, but it doesn't support the keyboard yet.&lt;br /&gt;
gui/widgets/slider.[c|h]pp&lt;br /&gt;
&lt;br /&gt;
Clicking on the widget should capture the keyboard and then arrow left/right should move one step even if not all steps are visible.&lt;br /&gt;
&lt;br /&gt;
=== Slider sizing ===&lt;br /&gt;
There are some issues with the sizing of a slider.&lt;br /&gt;
gui/widgets/slider.[c|h]pp&lt;br /&gt;
&lt;br /&gt;
In a layout step it needs to try to shrink itself, not entirely sure where or how yet, best ask mordante on irc.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;del&amp;gt;&lt;br /&gt;
== Savegame related stuff ==&lt;br /&gt;
&lt;br /&gt;
=== consistent player information ===&lt;br /&gt;
At the moment, the [player]-section for a campaign savegame will appear in two places: The root level of the savegame and the [replay_start]-section. This was due to a last-minute fix for 1.6 that was designed to be the least intrusive. The [player]-section should only be written to [replay_start] (and of course read from there as well).  Patch submitted: [https://gna.org/patch/index.php?1150] -grantwu&lt;br /&gt;
&lt;br /&gt;
=== fix bug #13268 (save corruption through undo/redo of recalls [https://gna.org/bugs/?13268] ===&lt;br /&gt;
&amp;lt;/del&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Miscellaneous ==&lt;br /&gt;
&lt;br /&gt;
=== More powerful village naming ===&lt;br /&gt;
'''Adding mountain names and other features to village names, having a second random name in village names'''&lt;br /&gt;
&lt;br /&gt;
Currently the village naming engine has a very good structure that could allow &lt;br /&gt;
more powerfull names to be generated. &lt;br /&gt;
Understanding how it works should be quite easy, and a few usefull improvements could be added.&lt;br /&gt;
&lt;br /&gt;
* Currently villages can use lake names and river names, this should be extended to other features like bridges, swamps, mountains etc...&lt;br /&gt;
* It would be nice to have a separate list of &amp;quot;first sylabus&amp;quot; and &amp;quot;last sylabus&amp;quot; for naming. That's not really needed in english, but some translations could use it&lt;br /&gt;
* Again, it is common to have villages with more than one &amp;quot;random&amp;quot; word in them. having a $name2 variable would be nice&lt;br /&gt;
&lt;br /&gt;
Euschn 24/03/2009&lt;br /&gt;
&lt;br /&gt;
=== Debug Mode ===&lt;br /&gt;
* New debug command functionality (setting additional status.variables, possibly terrain)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bugs ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
[[NotSoEasyCoding]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Future]]&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_lmg&amp;diff=29351</id>
		<title>SummerOfCodeProposal lmg</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_lmg&amp;diff=29351"/>
		<updated>2009-03-27T23:01:11Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''In progress...'''&lt;br /&gt;
&lt;br /&gt;
==User Information==&lt;br /&gt;
gna: lmg&amp;lt;br&amp;gt;&lt;br /&gt;
wesnoth forums: lmg&amp;lt;br&amp;gt;&lt;br /&gt;
irc: lgraham&amp;lt;br&amp;gt;&lt;br /&gt;
preferred email: &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Basics==&lt;br /&gt;
&lt;br /&gt;
===Introduction===&lt;br /&gt;
''Write a small introduction to yourself. )''&amp;lt;br&amp;gt;&lt;br /&gt;
I'm just finishing up my second year of software engineering. I have been a Linux user for two years, and I was looking into contributing to an open source project when I ran across Google Summer of Code. I thought this would be a great way for me to learn about contributing to open source projects.&lt;br /&gt;
&lt;br /&gt;
===Education=== &lt;br /&gt;
''What are you studying, subject, level and school''&amp;lt;br&amp;gt;&lt;br /&gt;
In April 2009, I will have completed my second year of Software Engineering at the University of Calgary in Calgary, Alberta, Canada.&lt;br /&gt;
&lt;br /&gt;
===Why Google Summer of Code?===&lt;br /&gt;
''Why do you want to participate in summer of code?''&amp;lt;br&amp;gt;&lt;br /&gt;
I would like to participate in the summer of code to enhance my programming skills and apply the software design techniques I am learning in classes. I feel that participating in this program will enhance my educational experience and give me something practical to which I can relate when doing classwork. In addition to this, I use a lot of open source software at home, and I am interested in learning more about open source development.&lt;br /&gt;
&lt;br /&gt;
===Patches Submitted to Wesnoth=== &lt;br /&gt;
''(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 Wesnoth. If you have gained commit access to our SVN (during the evaluation period or earlier) please state so. ''&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;here&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Experience==&lt;br /&gt;
&lt;br /&gt;
===Previous Projects===&lt;br /&gt;
''What programs/software have you worked on before? ''&amp;lt;br&amp;gt;&lt;br /&gt;
I have done both procedural and object oriented programming to learn the structure of the languages I have studied. Most of the programs I have worked on have been done to complete class requirements.&lt;br /&gt;
&lt;br /&gt;
===Team Software Development Experience=== &lt;br /&gt;
''Have you developed software in a team environment before? (As opposed to hacking on something on your own)''&amp;lt;br&amp;gt;&lt;br /&gt;
I have done a significant amount of work developing with another person, but I don't have experience developing with larger groups.&lt;br /&gt;
&lt;br /&gt;
===Previous Google Summer of Code Participation=== &lt;br /&gt;
''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?''&amp;lt;br&amp;gt;&lt;br /&gt;
I have never participated in Google Summer of Code.&lt;br /&gt;
&lt;br /&gt;
===Open Source=== &lt;br /&gt;
''Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.''&amp;lt;br&amp;gt;&lt;br /&gt;
I am not currently involved with any open source development projects.&lt;br /&gt;
&lt;br /&gt;
===Gaming Experience===&lt;br /&gt;
''Are you a gamer? What type of gamer are you?What type of games? What type of opponents do you prefer? Are you more interested in story or gameplay?Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.&lt;br /&gt;
We do not plan to favor Wesnoth players as such, but some particular projects require a good feeling for the game which is hard to get without having played intensively.''&amp;lt;br&amp;gt;&lt;br /&gt;
I enjoy gaming, but can only do it on a casual basis. I like fantasy/scifi-based games with a good story and gameplay, and I believe both the story and gameplay are essential to making a great game. I don't have experience in playing against other players. I have played Wesnoth for only a few days in single player mode, but I look forward to learning more about Wesnoth and branching into the multiplayer mode. Most of the games I have played are single-player games, and I look forward to exploring the multiplayer side of things.&lt;br /&gt;
&lt;br /&gt;
==Communication Skills==&lt;br /&gt;
&lt;br /&gt;
===English Fluency===&lt;br /&gt;
''Though most of our developers are not native English speakers, English is the project's working language. Describe your fluency level in written English.''&amp;lt;br&amp;gt;&lt;br /&gt;
English is my first language.&lt;br /&gt;
&lt;br /&gt;
===Player Interaction=== &lt;br /&gt;
''Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough''&amp;lt;br&amp;gt;&lt;br /&gt;
I think I will be good at interacting with other players. I was a forum moderator last summer, and I feel I am pretty well equipped to handle most things.&lt;br /&gt;
&lt;br /&gt;
===Advice and Criticism===&lt;br /&gt;
''Do you give constructive advice?Do you receive advice well? Are you good at sorting useful criticisms from useless ones?''&amp;lt;br&amp;gt;&lt;br /&gt;
I only give advice if I think it will be constructive. When someone gives me advice, I take it into consideration and try to use it if I can. I have done a lot of group work in which there are useful and useless criticisms, and I think I am fairly proficient at determining what is useful.&lt;br /&gt;
&lt;br /&gt;
==Project==&lt;br /&gt;
&lt;br /&gt;
===Selection and Reasons for Choosing===&lt;br /&gt;
''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? Why did you choose this project?''&amp;lt;br&amp;gt;&lt;br /&gt;
Savegame Reorganization. For this particular project, I would like to focus on the software development process and seeing how it works in a real project. I chose this project because many of the software engineering concepts I am currently learning can be applied to this project (UML, software design process)&lt;br /&gt;
&lt;br /&gt;
===Estimated Timeline===&lt;br /&gt;
''Include an estimated timeline for your work on the project. Don't forget to mention special things like &amp;quot;I booked holidays between A and B&amp;quot; and &amp;quot;I got an exam at ABC and won't be doing much then&amp;quot;.''&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;estimated timeline&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Technical Details===&lt;br /&gt;
''Include as much technical detail about your implementation as you can''&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;technical details&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Expected Outcome===&lt;br /&gt;
''What do you expect to gain from this project? What would make you stay in the Wesnoth community after the conclusion of SOC?''&amp;lt;br&amp;gt;&lt;br /&gt;
I would like to gain a good understanding of how open source projects work and how to contribute in a meaningful way. I would stay in the Wesnoth community after the conclusion of SOC if I have good support from my mentor and the development community and I can use my skills to make Wesnoth better.&lt;br /&gt;
&lt;br /&gt;
==Practical Considerations==&lt;br /&gt;
&lt;br /&gt;
===Tool and Languages===&lt;br /&gt;
''Are you familiar with any of the following tools or languages?''&lt;br /&gt;
&lt;br /&gt;
* Subversion (used for all commits)&lt;br /&gt;
* C++ (language used for all the normal source code)&lt;br /&gt;
** I have been using C++ for almost a year (I have taken two courses using C++ as the programming language)&lt;br /&gt;
* Python (optional, mainly used for tools)&lt;br /&gt;
** I have never used Pythong&lt;br /&gt;
* build environments (eg cmake/autotools/scons)&lt;br /&gt;
&lt;br /&gt;
''What programming languages are you fluent in?''&amp;lt;br&amp;gt;&lt;br /&gt;
C, C++, Java&lt;br /&gt;
&lt;br /&gt;
===Development Tools===&lt;br /&gt;
''Which tools do you normally use for development? Why do you use them?''&amp;lt;br&amp;gt;&lt;br /&gt;
vim - offers many features in a simple, easy to use command line text editor&lt;br /&gt;
&amp;lt;br&amp;gt;Eclipse - it shows compilation errors in real time&lt;br /&gt;
&amp;lt;br&amp;gt;junit - for unit testing of Java programs&lt;br /&gt;
&amp;lt;br&amp;gt;javadoc - create nicely formatted inline documentation&lt;br /&gt;
&lt;br /&gt;
===Spoken Languages===&lt;br /&gt;
''What spoken languages are you fluent in?)''&amp;lt;br&amp;gt;&lt;br /&gt;
I am fluent in English and have limited knowledge of French.&lt;br /&gt;
&lt;br /&gt;
===Availability and Alternate Contact===&lt;br /&gt;
''At what hours are you awake and when will you be able to be in IRC (please specify in UTC) 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.''&amp;lt;br&amp;gt;&lt;br /&gt;
I am generally awake 1400 - 0400 UTC. I will be able to be in IRC between the hours of 2300 - 0400 UTC during the week although the actual hours may vary (I don't have summer plans yet). On weekends, I am awake 1500 - 0500 UTC and can be on IRC anytime. I don't mind talking with my mentor on the phone - either regular or internet phone is good for me.&lt;br /&gt;
&lt;br /&gt;
[[Category:Summer of Code]]&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_Euschn&amp;diff=29350</id>
		<title>SummerOfCodeProposal Euschn</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_Euschn&amp;diff=29350"/>
		<updated>2009-03-27T23:00:28Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Euschn's SoC Proposal: Savegame Reorganization==&lt;br /&gt;
&lt;br /&gt;
hi, I'm euschn and I would like to contribute to wesnoth via GSoC&lt;br /&gt;
&lt;br /&gt;
real name: Eugen&lt;br /&gt;
&lt;br /&gt;
age: 26&lt;br /&gt;
&lt;br /&gt;
location: Vienna, Austria&lt;br /&gt;
&lt;br /&gt;
occupation: phd student for computer science, Vienna University of Technology&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Questionaire==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====1) Basics====&lt;br /&gt;
&lt;br /&gt;
'''1.1) Write a small introduction to yourself.'''&lt;br /&gt;
&lt;br /&gt;
My name is Eugen Jiresch, I live in Vienna, Austria, and I am 26 years old. I am a phd student in computer science at the Vienna University of Technology. My phd project is about formal models of computation and theory of programming languages.&lt;br /&gt;
Despite the theoretic focus of my phd, I like coding a lot, which is one of my reasons for applying for GSoC.&lt;br /&gt;
&lt;br /&gt;
'''1.2) State your preferred email address.'''&lt;br /&gt;
&lt;br /&gt;
jiresch_(atsign)_logic_(dot)_at&lt;br /&gt;
&lt;br /&gt;
'''1.3) If you have chosen a nick for IRC and Wesnoth forums, what is it?'''&lt;br /&gt;
&lt;br /&gt;
euschn (same as my gna.org account)&lt;br /&gt;
&lt;br /&gt;
'''1.4) Why do you want to participate in summer of code?'''&lt;br /&gt;
&lt;br /&gt;
There are several reasons. First, I would like to take part in an interesting software development project. &lt;br /&gt;
By doing so, I want to improve my skills and learn new things about programming. Then, being a gamer myself, I am very interested&lt;br /&gt;
in contributing to the development a computer game, especially one that seems cool and fun to me (Wesnoth falls in that category). I have often dreamed about a job in game development in the future, and this could be a good opportunity to get started.&lt;br /&gt;
Additionally, if I want a job for the summer, I want it to be something that is meaningful to me and needed/appreciated by others - like adding desired feature to a game.&lt;br /&gt;
Finally, being a poor student, 4500$ is a lot of money to me.&lt;br /&gt;
&lt;br /&gt;
'''1.5) What are you studying, subject, level and school?'''&lt;br /&gt;
&lt;br /&gt;
As mentioned above, I am a phd student in computer science, at Vienna University of Technology&lt;br /&gt;
&lt;br /&gt;
'''1.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 Wesnoth. If you have gained commit access to our SVN (during the evaluation period or earlier) please state so.'''&lt;br /&gt;
Not yet, but I plan to do so in the course of my application.&lt;br /&gt;
&lt;br /&gt;
====2) Experience====&lt;br /&gt;
&lt;br /&gt;
'''2.1) What programs/software have you worked on before?'''&lt;br /&gt;
&lt;br /&gt;
Most of the software I have done was for university courses. I have done a bit of programming in games that support modding/custom maps like Starcraft of World of Warcraft, but nothing too fancy.&lt;br /&gt;
Recently, I became a contributor to the inets project (see 2.4.1)&lt;br /&gt;
&lt;br /&gt;
'''2.2) Have you developed software in a team environment before? (As opposed to hacking on something on your own)'''&lt;br /&gt;
&lt;br /&gt;
Yes, in university courses and the inets project (see 2.4.1)&lt;br /&gt;
&lt;br /&gt;
'''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?'''&lt;br /&gt;
&lt;br /&gt;
No.&lt;br /&gt;
&lt;br /&gt;
====2.4) Open Source====&lt;br /&gt;
&lt;br /&gt;
'''2.4.1) Are you already involved with any open source development projects? If yes, please describe the project and the scope of your involvement.'''&lt;br /&gt;
&lt;br /&gt;
Yes, I recently became contributor to the inets project ( https://gna.org/projects/inets/ ). inets is a compiler from an interaction nets based language to C (for more information, see http://www.interaction-nets.org/)&lt;br /&gt;
Interaction nets is an innovative formal model of computation, which is also a focus of my phd project.&lt;br /&gt;
My involvement so far has been the implementation of extended pattern matching for the computational rules of the inets language, and some bug fixing.&lt;br /&gt;
&lt;br /&gt;
====2.5) Gaming experience - Are you a gamer?====&lt;br /&gt;
Yes, since early childhood!&lt;br /&gt;
&lt;br /&gt;
'''2.5.1) What type of gamer are you?'''&lt;br /&gt;
&lt;br /&gt;
I am a passionate gamer, maybe even hardcore - allthough the definition of hardcore is quite fuzzy depending on game and community :).&lt;br /&gt;
In short, I spend a *lot* of my free time playing computer games and checking out their respective communities.&lt;br /&gt;
&lt;br /&gt;
'''2.5.2) What type of games?'''&lt;br /&gt;
&lt;br /&gt;
My favorite genres and games include:&lt;br /&gt;
&lt;br /&gt;
Role playing games: Final Fantasy series, Zelda series, Baldurs Gate series, Diablo series,...&lt;br /&gt;
&lt;br /&gt;
Strategy games: Warcraft series, Starcraft, Spellforce, and just recently Wesnoth&lt;br /&gt;
&lt;br /&gt;
Platforming: the usual old school nintendo stuff&lt;br /&gt;
&lt;br /&gt;
Action: Quake series, Metroid series, Portal&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
singleplayer vs multiplayer:&lt;br /&gt;
&lt;br /&gt;
I enjoy a good singleplayer game a lot. But I also like multiplayer, and I am doing a lot of online multiplayer gaming.&lt;br /&gt;
For example, a few years ago I was playing Warcraft 3 online a lot, and got to know the online community pretty well.&lt;br /&gt;
So while I have not played Wesnoth a lot, I have a good feeling for online gaming communities. (if they are comparable at all!)&lt;br /&gt;
&lt;br /&gt;
'''2.5.3) What type of opponents do you prefer?'''&lt;br /&gt;
&lt;br /&gt;
I like opponents that can teach me something and help me improve my skills in a game, or just generally make a game fun.&lt;br /&gt;
To me, playing against a good and fun oponent in a multiplayer game makes winning or losing of secondary importance.&lt;br /&gt;
Generally, I do not like oponents who are sore losers, and I am doing my best not to be one, either.&lt;br /&gt;
&lt;br /&gt;
'''2.5.4) Are you more interested in story or gameplay?'''&lt;br /&gt;
&lt;br /&gt;
I would say it depends on the game. Awesome gameplay can make a great game even with a lackluster story (or none at all). &lt;br /&gt;
In my opinion, this is often true for multiplayer games, where most of the fun comes from human oponents (or allies). But singleplayer games &lt;br /&gt;
with a weak story can be great, too (everyone who has ever enjoyed a Super Mario game has to agree).&lt;br /&gt;
Then again, I remember many cool games especially for their story (RPGs mostly, but also some strategy games).&lt;br /&gt;
So all in all, either can make a great game and I am interested in both.&lt;br /&gt;
&lt;br /&gt;
'''2.5.5) Have you played Wesnoth? If so, tell us roughly for how long and whether you lean towards single player or multiplayer.'''&lt;br /&gt;
&lt;br /&gt;
I only recently got to know Wesnoth. I have played some of the singleplayer campaigns, and I like it a lot so far. It is a nice mix of strategy and roleplaying, and I plan to continue playing it &lt;br /&gt;
(apart from getting to know it for GSoC!). I understand that being an experienced wesnoth player helps with some projects, I hope this is not so mandatory for savegame reorganization.&lt;br /&gt;
&lt;br /&gt;
//We do not plan to favor Wesnoth players as such, but some particular projects require a good feeling for the game which is hard to get without having played intensively.&lt;br /&gt;
&lt;br /&gt;
====3) Communication skills====&lt;br /&gt;
&lt;br /&gt;
'''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.'''&lt;br /&gt;
&lt;br /&gt;
I am a German native speaker, but I feel I can fully express myself in English.&lt;br /&gt;
&lt;br /&gt;
'''3.2) Are you good at interacting with other players? Our developer community is friendly, but the player community can be a bit rough.'''&lt;br /&gt;
&lt;br /&gt;
Yes, I am fine with interacting with other players, even if it is going to be rough. As mentioned in 2.5.2), I have experience with online gaming communities (especially Blizzard games), &lt;br /&gt;
so I am used to their not so friendly aspects.&lt;br /&gt;
&lt;br /&gt;
'''3.3) Do you give constructive advice?'''&lt;br /&gt;
&lt;br /&gt;
Absolutely, I try to keep my advice as constructive as possible.&lt;br /&gt;
&lt;br /&gt;
'''3.4) Do you receive advice well?'''&lt;br /&gt;
&lt;br /&gt;
Yes, constructive advice is a chance to improve myself, and I always give my best to take that chance.&lt;br /&gt;
&lt;br /&gt;
'''3.5) Are you good at sorting useful criticisms from useless ones?'''&lt;br /&gt;
&lt;br /&gt;
Yes.&lt;br /&gt;
&lt;br /&gt;
====4) Project====&lt;br /&gt;
&lt;br /&gt;
'''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?'''&lt;br /&gt;
&lt;br /&gt;
Yes, I selected Savegame reorganization.&lt;br /&gt;
&lt;br /&gt;
4.2) If you have invented your own project, please describe the project and the scope.&lt;br /&gt;
&lt;br /&gt;
'''4.3) Why did you choose this project?'''&lt;br /&gt;
&lt;br /&gt;
There are several reasons. First, I want to work on a project that is deemed necessary or desired by the wesnoth community. I think redesigning savegames is such a project.&lt;br /&gt;
I do not want to work on some feature that noone really wants.&lt;br /&gt;
Second, I like the concept of multiplayer campaigns. Cooperative multiplayer games are good fun (I like them a lot myself), but they are rare. Only few games have coop modes, especially in combination with &lt;br /&gt;
story-driven game types like a campaign in wesnoth. So if I can help to promote cooperative game types by improving wesnoth's savegame design, I will be very glad to do so.&lt;br /&gt;
In general, it seems to me that studying a &amp;quot;messy&amp;quot; design (Im quoting the wiki here) and trying to come up with a better one is a good challenge that I would like to take. Also, I am&lt;br /&gt;
curious how this component works in a project of this size, as I have not yet worked on such a big program and I would like to learn what makes it tick.&lt;br /&gt;
Finally, I think I have the required skills to succeed at this project (with help from my mentor of course!). I have good C++ skills and I feel up to&lt;br /&gt;
study the current implementation and develop a deliberate design in cooperation with my mentor.&lt;br /&gt;
&lt;br /&gt;
'''4.4) Include an estimated timeline for your work on the project. Don't forget to mention special things like &amp;quot;I booked holidays between A and B&amp;quot; and &amp;quot;I got an exam at ABC and won't be doing much then&amp;quot;.'''&lt;br /&gt;
&lt;br /&gt;
My estimated timeline is affected by both &amp;quot;special things&amp;quot; mentioned in the question.&lt;br /&gt;
First, I will have to spend some time on university stuff up to mid June. In this period, I can of course still work on the GSoC project, just not full time. &lt;br /&gt;
I think that I will be able to work 20-25h a week on wesnoth during that time. To tackle this problem, some people at #wesnoth-dev have suggested that I start early, which is generally possible.&lt;br /&gt;
I could start on the actual work as soon as May 16th, which is a week earlier than the official date. This could help me to regain the lost time.&lt;br /&gt;
Note that this estimation is more on the worst-case side. Things may turn out better and I might have more time in June anyways (I will manage 20h a week in any case).&lt;br /&gt;
Still, if you think this is not feasible, please tell me so I can reconsider my options.&lt;br /&gt;
Second, I will most likely be on vacation from July 12th to July 19th. I hope this would not be too much of a problem.&lt;br /&gt;
&lt;br /&gt;
as for a tentative timeline: (this will be edited after further discussion with the developers)&lt;br /&gt;
&lt;br /&gt;
april 20th - may 15th: &amp;quot;bonding peroid:&amp;quot; I get accepted and start to read documentation, get familiar with the code.&lt;br /&gt;
&lt;br /&gt;
may 16th - june 15th: the actual start of work: (note: the above mentioned part time period)&lt;br /&gt;
&lt;br /&gt;
 * I start on the documentation of the current implementation of savegames&lt;br /&gt;
 * investigation of WML&lt;br /&gt;
 * play with different scenarios and their savegames&lt;br /&gt;
 * start to evaluate the problems with/needs for multiplayer campaigns&lt;br /&gt;
&lt;br /&gt;
june 15th - june 30th: &lt;br /&gt;
&lt;br /&gt;
 * finish evaluation of problems&lt;br /&gt;
 * develop a new design of &amp;quot;unified&amp;quot; savegames&lt;br /&gt;
 * deliver UML model&lt;br /&gt;
&lt;br /&gt;
july 1st - july 11th: &lt;br /&gt;
&lt;br /&gt;
 * start of implementation&lt;br /&gt;
 * goal: get a part of the implementation done before mid-term evaluation&lt;br /&gt;
&lt;br /&gt;
july 12th - july 19th:&lt;br /&gt;
&lt;br /&gt;
 * vacation&lt;br /&gt;
&lt;br /&gt;
july 20th - august 10th:&lt;br /&gt;
&lt;br /&gt;
 * finish implementation&lt;br /&gt;
&lt;br /&gt;
august 11th - august 17th:&lt;br /&gt;
&lt;br /&gt;
 * testing, bug fixing, documentation&lt;br /&gt;
&lt;br /&gt;
		&lt;br /&gt;
&lt;br /&gt;
'''4.5) Include as much technical detail about your implementation as you can'''&lt;br /&gt;
&lt;br /&gt;
The description of the Savegame project in the wiki suggests that several technical details will be unclear until the design, which is a rather large milestone itself, is fleshed out.&lt;br /&gt;
Concerning the design milestone, I plan to deliver a UML model describing the new savegame organization.&lt;br /&gt;
&lt;br /&gt;
'''4.6) What do you expect to gain from this project?'''&lt;br /&gt;
&lt;br /&gt;
I would like to:&lt;br /&gt;
 * gain insight on the development of large open source projects&lt;br /&gt;
 * learn more about game design&lt;br /&gt;
 * improve my coding skills&lt;br /&gt;
 * last but not least, I want to gain the satisfaction of contributing something worthy to such a big project&lt;br /&gt;
&lt;br /&gt;
'''4.7) What would make you stay in the Wesnoth community after the conclusion of SOC?'''&lt;br /&gt;
&lt;br /&gt;
The success of my project and/or the feeling that I have not completely made a fool of myself :).&lt;br /&gt;
&lt;br /&gt;
====5) Practical considerations====&lt;br /&gt;
&lt;br /&gt;
'''5.1) Are you familiar with any of the following tools or languages?'''&lt;br /&gt;
&lt;br /&gt;
   * Subversion (used for all commits)&lt;br /&gt;
Yes, I have used SVN for university projects and my master thesis.&lt;br /&gt;
   * C++ (language used for all the normal source code)&lt;br /&gt;
Yes, I think I have good C++ skills. To elaborate with the C++ quiz on http://www.wesnoth.org/wiki/Hackingwesnoth : I fit in the &amp;quot;can answer most questions&amp;quot; category (I looked up the ones I did not know of course).&lt;br /&gt;
   * Python (optional, mainly used for tools)&lt;br /&gt;
Sorry, I do not have Python skills.&lt;br /&gt;
   * build environments (eg cmake/autotools/scons)&lt;br /&gt;
I used autotools in a university project.&lt;br /&gt;
&lt;br /&gt;
'''5.2) Which tools do you normally use for development? Why do you use them?'''&lt;br /&gt;
&lt;br /&gt;
For larger projects: Eclipse, Netbeans. I use them for their debugging capabilities and for convenience features like code completion&lt;br /&gt;
for smaller stuff: vi, sometimes jEdit, gdb. I use them for their simplicity and their wide availability.&lt;br /&gt;
&lt;br /&gt;
'''5.3) What programming languages are you fluent in?'''&lt;br /&gt;
&lt;br /&gt;
Java, C++, Haskell. I have mostly used them in university courses. Additionally, I have been a tutor for undergraduate Java courses and used Haskell for my masters project.&lt;br /&gt;
&lt;br /&gt;
'''5.4) What spoken languages are you fluent in?'''&lt;br /&gt;
&lt;br /&gt;
I am a German native speaker and I am fluent in English. I also speak a bit French and Russian&lt;br /&gt;
&lt;br /&gt;
'''5.5) At what hours are you awake and when will you be able to be in IRC (please specify in UTC)'''&lt;br /&gt;
&lt;br /&gt;
Austria is UTC+1, so my usual working/availability hours would be UTC: 8am - 4pm, but its flexible to some degree. On some days, I will most likely be available longer into the evening.&lt;br /&gt;
&lt;br /&gt;
'''5.6) 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.'''&lt;br /&gt;
&lt;br /&gt;
I would mind not at all. I am fine with both phone and voice chat if you can bear with my german accent :).&lt;br /&gt;
&lt;br /&gt;
==Ideas on Savegame Reorganization==&lt;br /&gt;
&lt;br /&gt;
===WML Mapping Redundancies===&lt;br /&gt;
&lt;br /&gt;
In general, we can distinguish between two types of redundancies:&lt;br /&gt;
&lt;br /&gt;
'''A:''' information is stored in two or more places in a savegame file (WML), but is mapped to the '''same c++ object.'''&lt;br /&gt;
&lt;br /&gt;
'''B:''' information is stored in two or more places in WML, and is mapped to '''more than one c++ object'''.&lt;br /&gt;
&lt;br /&gt;
Both types are worth fixing.&lt;br /&gt;
&lt;br /&gt;
As mentioned on [[SoC_Ideas_Savegame]], WML events can change a lot of information of a scenario, which makes some redundancies, e.g., between [snapshot] and root/[replay_start], necessary. I will list some info in WML that I think is unnecessarily redundant. (and verify my thoughts with a WML expert).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''root vs [snapshot] (type A)'''&lt;br /&gt;
&lt;br /&gt;
serveral fields appear on the root and again under [snapshot]. The following are candidates for redundancy elimination:&lt;br /&gt;
&lt;br /&gt;
 * abbrev&lt;br /&gt;
 * version&lt;br /&gt;
 * campaign (SP only)&lt;br /&gt;
 * campaign_type&lt;br /&gt;
 * campaign_define&lt;br /&gt;
 * random_seed&lt;br /&gt;
 * difficulty&lt;br /&gt;
 * random_calls&lt;br /&gt;
 * underlying_unit_id (task?)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
I think these need to be stored twice:&lt;br /&gt;
 * label (different in root and [snapshot])&lt;br /&gt;
 * completion&lt;br /&gt;
 * end_text_duration (different endings possible)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''[player] vs [snapshot.side] (type B)'''&lt;br /&gt;
&lt;br /&gt;
[player] (SP only) only holds a few items, most of which occur in [snapshot.side]. Additionally, both map to different c++ objects, player_info and team.info_ .&lt;br /&gt;
&lt;br /&gt;
==Milestones and Timeline==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
back to: [[SummerOfCodeIdeas| GSoC Ideas]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Summer of Code]]&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_grantwu&amp;diff=29349</id>
		<title>SummerOfCodeProposal grantwu</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=SummerOfCodeProposal_grantwu&amp;diff=29349"/>
		<updated>2009-03-27T22:59:49Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Basics==&lt;br /&gt;
&lt;br /&gt;
===Introduction===&lt;br /&gt;
My name is Grant Wu and I hope to work with the Wesnoth developers over the summer as part of Google's Summer of Code.&lt;br /&gt;
&lt;br /&gt;
===Preferred E-mail Address===&lt;br /&gt;
grantwu at umich dot edu&lt;br /&gt;
&lt;br /&gt;
===Handles===&lt;br /&gt;
My handle on the IRC channels is 'grantwu' while my name on the forums is 'zenneth'.&lt;br /&gt;
&lt;br /&gt;
===Why GSoC?===&lt;br /&gt;
I want to participate in Google's Summer of Code in order to gain experience working with veteran coders on a project that interests me.  I plan on entering the video game industry after I graduate so the Wesnoth project looks like the best fit to me.&lt;br /&gt;
&lt;br /&gt;
===School===&lt;br /&gt;
I am currently enrolled at the University of Michigan in Ann Arbor.  I am in my second year of studying Computer Science through the College of Engineering.&lt;br /&gt;
&lt;br /&gt;
===Patches for Wesnoth===&lt;br /&gt;
I have not yet submitted anything to the Wesnoth project but I plan on doing my best to change that.&lt;br /&gt;
&lt;br /&gt;
==Experience==&lt;br /&gt;
&lt;br /&gt;
===Projects===&lt;br /&gt;
My current experience is largely through assignments from my classes.  One of my classes is entirely project based so I know how to handle larger tasks.  The biggest programming project I've worked on so far was actually a video game.  I made a 2D platformer with some physics twists to it.  Not the most complicated but it gave me valuable experience.&lt;br /&gt;
&lt;br /&gt;
===Groups===&lt;br /&gt;
My very first programming class at the University focused on pair programming.  All of our projects were done with a partner.  This taught me a lot of valuable lessons when it comes to just how fallible every programmer is.  The video game project I described in the previous section was also done in a team of 4.  The people I worked with were all passionate about video games and programming.  I learned to appreciate being in such an environment and I'm well aware that some groups won't be as ideal.&lt;br /&gt;
&lt;br /&gt;
===Previous GSoCs===&lt;br /&gt;
I have never participated in Google's Summer of Code before.&lt;br /&gt;
&lt;br /&gt;
===Open Source===&lt;br /&gt;
I have very limited experience working with open source projects.  By limited I mean I use Ubuntu as my standard operating system for my netbook.  I hope to remedy this unfortunate situation.&lt;br /&gt;
&lt;br /&gt;
===Am I a Gamer===&lt;br /&gt;
Am I a gamer?  Hell yeah.  Gaming is my passion.  I play everything and anything.  Unusually enough I was looking for a turn-based strategy RPG to play before I found Wesnoth.  Convenient.&lt;br /&gt;
&lt;br /&gt;
====Type of Gamer====&lt;br /&gt;
I'm a hardcore gamer.  There's no other way to describe my relationship with video games.&lt;br /&gt;
&lt;br /&gt;
====Types of Games====&lt;br /&gt;
Like I said before, I play pretty much anything.  My favorites right now include Left 4 Dead, Civilization IV, Team Fortress 2, and Dawn of War II.  I also play a lot of FIFA 09 and I still play Mass Effect now and then.  I plan on getting more into Wesnoth too.&lt;br /&gt;
&lt;br /&gt;
====Types of Opponents====&lt;br /&gt;
My ideal human opponent is a mythical beast that does not exist.  Someone who is respectful but not afraid to do a little trash talking to put an edge on things.  My ideal AI opponent also probably doesn't exist but I'm pretty sure devs fake it.  The one thing that I feel an AI opponent has to do is be adaptable and challenging while remaining fair.  I hope that gone are the days where computer bots could see through walls in shooters and have laser vision to pierce through fog of war in strategy games.&lt;br /&gt;
&lt;br /&gt;
====Story or Gameplay====&lt;br /&gt;
I'd love to have both, but sadly its usually only one.  If a game has poor story and good gameplay just the experience of playing the game will push it through.  I feel like this is usually the case with games, not ideal at all.  There has been the rare game where the story was what kept me playing.  For example, when I'm in the right mood I like to burn through Japanese RPGs.  Japanese RPGs so often fall into the same trappings when it comes to gameplay but the story keeps me mashing the attack command for hours and hours.&lt;br /&gt;
&lt;br /&gt;
====Played Wesnoth====&lt;br /&gt;
I have played a little bit.  I didn't know about it until I saw it on GSoC's list of projects.  I plan on sinking my teeth into it more and if worse comes to worst at least I was introduced to a good game.  For the moment I'm going to try to get better at the game through single player and eventually make the dive into multiplayer.&lt;br /&gt;
&lt;br /&gt;
==Communication Skills==&lt;br /&gt;
&lt;br /&gt;
===English===&lt;br /&gt;
English is my native tongue and I think I'm pretty good at communicating with it.&lt;br /&gt;
&lt;br /&gt;
===Player Community===&lt;br /&gt;
Being a pretty competitive gamer myself I'm well aware of how nasty the player community can get (NERF PALADINS!  NERF THE DEMOMAN!).  I'm more than prepared to handle that.&lt;br /&gt;
&lt;br /&gt;
===Constructive Advice===&lt;br /&gt;
In my opinion, if it isn't constructive then really is no reason to give it.  When I give feedback I try to form it in a way that is most useful to the recipient.&lt;br /&gt;
&lt;br /&gt;
===How Well Do I Receive Advice===&lt;br /&gt;
One of the positions I hold at my University is the Publications Chair for a student organization.  I create flyers and basically mold the image of the org.  Because of this I receive constant feedback from the other members about my work and I'm experienced with taking in a wide variety of suggestions.  My group programming projects also had a lot of back and forth communication.  After implementing a new feature we'd all sit down and discuss what's good, what's bad, and the person in charge of that feature would go back and make whatever changes we decided on.&lt;br /&gt;
&lt;br /&gt;
===Filter Feedback===&lt;br /&gt;
Again my previous experiences have taught me a lot of about taking in and digesting feedback.  You can't take every piece of advice as gospel.  I've burned a lot of time sitting down and mulling over the feedback I've gotten on my work.&lt;br /&gt;
&lt;br /&gt;
==Project==&lt;br /&gt;
&lt;br /&gt;
===Which Project I Picked===&lt;br /&gt;
I picked the save game project.  I hope to make the multiplayer and single player experience of Wesnoth indistinguishable, at least when it comes to saving.&lt;br /&gt;
&lt;br /&gt;
===Why This Project===&lt;br /&gt;
If there's one thing that I love about games, its working together with another player.  Getting a multiplayer campaign option working for Wesnoth would be a huge step for it and add a hugely valuable feature.  In addition to this, I feel that this project is very doable with my current experience with C++.  Finally, the class where I created my first game emphasized the important of UML and language-independent representation of code.  I feel like I can use what I learned from that class on this project.&lt;br /&gt;
&lt;br /&gt;
===Timeline===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|align=&amp;quot;right&amp;quot; width=&amp;quot;125&amp;quot;|March 25th - April 29th&lt;br /&gt;
|align=&amp;quot;left&amp;quot;|These are the remaining days of the school semester.  I plan on using this time to familiarize myself with everything Wesnoth.  Code, the community, everything.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;right&amp;quot; width=&amp;quot;125&amp;quot;|April 29th - May 23rd&lt;br /&gt;
|align=&amp;quot;left&amp;quot;|Begin working with my mentor on the overall design of how to change the save file structure.  I should be familiar enough with how everything works by this point to keep things moving, however, this is the most important part of the process so I a significant amount of time should be devoted to design.  UML diagrams and such will be drawn up during this time.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;right&amp;quot; width=&amp;quot;125&amp;quot;|May 24rd - June 14th&lt;br /&gt;
|align=&amp;quot;left&amp;quot;|Prototyping should begin now.  This is also the prescribed &amp;quot;start coding!&amp;quot; time from Google.  Hopefully with the early start on the project this will give me time to come up with more than one prospective implementation idea to work with.  This way I can start prototyping and see if there are any unforeseen shortcomings to the proposed solutions.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;right&amp;quot; width=&amp;quot;125&amp;quot;|June 14th - June 16th&lt;br /&gt;
|align=&amp;quot;left&amp;quot;|After a few weeks of rapid prototyping I hope to discuss the results of all the test runs with my mentor.  We'll weigh the options and hopefully quickly come to a conclusion on what the ideal solution candidate.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;right&amp;quot; width=&amp;quot;125&amp;quot;|June 16th - July 10th&lt;br /&gt;
|align=&amp;quot;left&amp;quot;|At this point I'll begin the final implementation of the code.  Of course I'm still far from being done.  I'll work closely with my mentor to get the final product up and running by when Google requests us to turn in midterm reviews.&lt;br /&gt;
|-&lt;br /&gt;
|align=&amp;quot;right&amp;quot; width=&amp;quot;125&amp;quot;|July 10th - August 10th&lt;br /&gt;
|align=&amp;quot;left&amp;quot; width=&amp;quot;125&amp;quot;|So while my experience with open source is limited, from what I can see the success of any open source project is the community.  At this time I would like to release the final product to the community and try to use whatever good feedback I get.  I'll continue to polish it until the Google's given deadline and probably work on it beyond then.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Technical Details===&lt;br /&gt;
I'm going to leave this section unpopulated for now until I become more familiar with Wesnoth's source code.&lt;br /&gt;
&lt;br /&gt;
===My Own Personal Gain===&lt;br /&gt;
I hope to become involved in an active open source project and community while gaining experience on working with a video game.  I'm pretty sure Wesnoth will provide both.&lt;br /&gt;
&lt;br /&gt;
===Continued Involvement===&lt;br /&gt;
I feel as though after reading the documentation and just lurking around the IRC channel and forums that the Wesnoth community is a very healthy one.  My continued involvement with the project is directly related to the activity of the community as a whole.&lt;br /&gt;
&lt;br /&gt;
==Practical Considerations==&lt;br /&gt;
===Languages===&lt;br /&gt;
All the required Computer Science courses taught through the College of Engineering here use C++.  I'm very familiar and comfortable with writing code in it and learning with C++.  I don't know very much Python and I'm not familiar with build environments.  Build environments are number one on my list of things to learn though.&lt;br /&gt;
&lt;br /&gt;
===Tools===&lt;br /&gt;
I write my code in either gedit or emacs.  I use gedit because its a convenient and modern editor while I use emacs when working on my schools remote computing environments.  I use g++ to compile my C++ code and I haven't needed to use anything else as of yet.&lt;br /&gt;
&lt;br /&gt;
===Fluent Programming Languages===&lt;br /&gt;
I am most familiar with C++.  I've spent two years working with it pretty extensively now.  I also feel that one of the courses I'm taking now is covering some of the most vital aspects of the language and object oriented programming in general.  The first part of the course was review but now we're going over abstract data types and the very important features that OO programming provides (from what I read, Wesnoth's lead dev is very passionate about encapsulation).&lt;br /&gt;
&lt;br /&gt;
===Fluent Spoken Languages===&lt;br /&gt;
I am fluent in English and spoken Mandarin Chinese.  I also know a bit of German.&lt;br /&gt;
&lt;br /&gt;
===Waking Hours===&lt;br /&gt;
I'm usually up from late morning to early morning.  10AM - 3AM are most likely.  During the summer I can be on IRC at almost all times though I like to keep an active and healthy lifestyle so I'll have to stray away from the keyboard at times.&lt;br /&gt;
&lt;br /&gt;
===Phone Calls===&lt;br /&gt;
I'd actually prefer to communicate on the phone.  Makes for a stronger relationship.  Unfortunately, computer science lends itself to digital communication due to the technical nature of the subject.&lt;br /&gt;
&lt;br /&gt;
[[Category:Summer of Code]]&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=EasyCoding&amp;diff=29328</id>
		<title>EasyCoding</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=EasyCoding&amp;diff=29328"/>
		<updated>2009-03-26T23:57:43Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Savegame related stuff */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Foreword ==&lt;br /&gt;
This page is here to document easy to do coding tasks. It is not here to double the feature request database, and should only be filled by people that know the code well enough to judge the difficulty of a given task. &lt;br /&gt;
&lt;br /&gt;
If you are such a person, you should feel free to edit this page.&lt;br /&gt;
&lt;br /&gt;
If you're not, you should post a feature request and discuss your idea on the forum or IRC. A coder with better knowledge of the code might give you the green light to add your feature here.&lt;br /&gt;
&lt;br /&gt;
Anybody should feel free to add &amp;quot;clues&amp;quot; to any tasks, that is entry points, traps to avoid, person to contact to discuss and so on.&lt;br /&gt;
&lt;br /&gt;
If you plan to work on a feature, write your name at the bottom of the feature, with the date. Note that if you are too long at working on a feature I'll &amp;quot;free&amp;quot; it back (that is if you're not working on it. If you have problems implementing it, just tell us....)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--[[User:Boucman|Boucman]] 20:48, 3 October 2006 (CEST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Since bugs are sometimes a good opportunity to get a first idea of the code, i will add some here that are easy to fix as soon as i stumble upon them (the one i had in mind is fixed already ;-).&lt;br /&gt;
&lt;br /&gt;
--Yogi Bear, 28 February 2008&lt;br /&gt;
&lt;br /&gt;
== MP related features ==&lt;br /&gt;
&lt;br /&gt;
=== Use different font for in-game chat ===&lt;br /&gt;
Since commas and dots are apparently hard to tell apart. As per FR #7470 [https://gna.org/bugs/?7470]&lt;br /&gt;
&lt;br /&gt;
== WML related features ==&lt;br /&gt;
&lt;br /&gt;
=== WML configurable village income / upkeep ===&lt;br /&gt;
Preferably as a [scenario], [side] or [campaign] keys. As per FR #6301 [https://gna.org/bugs/?6301]&lt;br /&gt;
&lt;br /&gt;
=== Add support of [if] for [scenario] ===&lt;br /&gt;
As per FR #4539 [https://gna.org/bugs/?4539]&lt;br /&gt;
&lt;br /&gt;
=== Make [have_unit] optionaly use full SUF ===&lt;br /&gt;
[have_unit] by default uses SUF but does not apply it to recall list. Introduce an optional key that will allow to lift that limitation.&lt;br /&gt;
&lt;br /&gt;
=== Side-specific results ===&lt;br /&gt;
Giving result=defeat or result=victory for specific sides. ([http://gna.org/bugs/index.php?4960 FR #4960]) -- [[User:dlr365|dlr365]] -- patch submitted [https://gna.org/bugs/index.php?4960]&lt;br /&gt;
&lt;br /&gt;
=== Support for leaderless multiplayergames ===&lt;br /&gt;
Add support for the WML key victory_when_enemies_defeated= in the scenario tag during multiplayergames. ([https://gna.org/bugs/index.php?8106 FR #8106])&lt;br /&gt;
&lt;br /&gt;
=== Support for standalone multiplayer scenarios ===&lt;br /&gt;
There used to be support for standalone scenarios in the userdata tree, in reorganising the trees this feature got lost and an add-on is now required to add a scenario.&lt;br /&gt;
Re-add this feature. It is probably a good idea to mirror the mainline multiplayer tree.&lt;br /&gt;
&lt;br /&gt;
=== Other Ideas ===&lt;br /&gt;
See [[FutureWML]]; some ideas there are easier than others.&lt;br /&gt;
&lt;br /&gt;
== Improvements to FormulaAI ==&lt;br /&gt;
&lt;br /&gt;
Add new formula functions, or minor improvements to the formula language. Make it easier to debug the formula language.&lt;br /&gt;
&lt;br /&gt;
Please discuss these with Dragonking, Sirp or Boucman&lt;br /&gt;
&lt;br /&gt;
=== Poisoning Improvement ===&lt;br /&gt;
&lt;br /&gt;
Writing a formula that will make units with poison attacks prioritize their targets to spead poison as much as possible, avoiding already poisoned units and other useless targets&lt;br /&gt;
&lt;br /&gt;
=== About to level formula ===&lt;br /&gt;
&lt;br /&gt;
Writing a formula that would handle units with only a few XP left to level and have them fight accordingly (most likely to kill or hit depending on XP needed, taking into account target's level)&lt;br /&gt;
&lt;br /&gt;
=== Healer improvements ===&lt;br /&gt;
&lt;br /&gt;
Handle units with healing power, moving them at places where they can provide the most healing&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Leader improvements ===&lt;br /&gt;
&lt;br /&gt;
A bit more complicated : special handling of units with leadership to have them support units. Only do it if it actually is usefull (less hits needed to kill the unit) and ability to help multiple units in a single turn (assuming enough MP)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Berserker improvements ===&lt;br /&gt;
&lt;br /&gt;
The default AI's strategy of attacking as much as possible is very bad with berserker... A simple AI that would prevent the berserker from attacking (and keeping him close to fight without being exposed) and attack when the chance to kill is high enough would be an interesting addition&lt;br /&gt;
&lt;br /&gt;
=== Debugging help ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;* provide a way for a formula to have a text float over hex (for debugging purpose).&amp;lt;/s&amp;gt; done by [[SummerOfCodeProposal_AI_Improvement_Crab|Crab]], patch submitted [https://gna.org/bugs/?13230]&lt;br /&gt;
* in debug mode, have all AI move print their name in the log&lt;br /&gt;
&lt;br /&gt;
=== New type of candidate moves : Global ===&lt;br /&gt;
 &lt;br /&gt;
to be called only once with no implicit variable&lt;br /&gt;
&lt;br /&gt;
== GUI related features ==&lt;br /&gt;
-------------------&lt;br /&gt;
&lt;br /&gt;
Note at the moment Mordante is working on a new GUI system, these &lt;br /&gt;
changes will probably affect the way these items need to be implemented.&lt;br /&gt;
Contact Mordante on IRC before starting to work on these.&lt;br /&gt;
  &lt;br /&gt;
--[[User:SkeletonCrew|SkeletonCrew]] 14:04, 9 March 2008 (EDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Theme Changes ===&lt;br /&gt;
&lt;br /&gt;
* allow custom themes to display values of WML variables ([http://gna.org/bugs/index.php?6209 FR #6209])&lt;br /&gt;
* hide the hourglass item from the statusbar when there is no timer&lt;br /&gt;
&lt;br /&gt;
=== Widget Changes ===&lt;br /&gt;
* show side number, name and team association information in the status table &lt;br /&gt;
* make games sortable in the lobby (open slots, total number of players, era, XP modifier, gold per village, fog/shroud) &lt;br /&gt;
* input history (chat, commands, ..) - note: rujasu is working on this feature&lt;br /&gt;
&lt;br /&gt;
== GUI2 related features ==&lt;br /&gt;
GUI2 is the new gui engine Mordante/SkeletonCrew is working on. &lt;br /&gt;
* Information on the wiki can be found here http://www.wesnoth.org/wiki/GUIToolkit&lt;br /&gt;
* The source code is under src/gui/&lt;br /&gt;
* The configuration config files are under data/gui/default&lt;br /&gt;
&lt;br /&gt;
Some tasks need the --new-widgets since the code is only shown in the experimental mode. Tasks which need this switch have the * in the title.&lt;br /&gt;
&lt;br /&gt;
=== Generic yes/no ok/cancel dialog ===&lt;br /&gt;
There's already a generic OK dialog &lt;br /&gt;
* src/gui/dialogs/message.[h|c]pp&lt;br /&gt;
* data/gui/default/window/message.cfg&lt;br /&gt;
&lt;br /&gt;
This dialog should have the option to show a cancel button as well and also let the caller of the dialog determine the text of the button. Maybe more buttons (4 in total) can be added to make the dialog more flexible.&lt;br /&gt;
&lt;br /&gt;
=== * Minimap ===&lt;br /&gt;
The minimap widget has already been made but is broken.&lt;br /&gt;
* src/gui/widgets/minimap.[c|h]pp&lt;br /&gt;
&lt;br /&gt;
The drawing code has been rewritten, but this widget hasn't been updated it's used in the MP connection dialog (which needs more work).&lt;br /&gt;
&lt;br /&gt;
=== * Savegame dialog ===&lt;br /&gt;
This is a new dialog to write and requires the minimap code to be fixed first. The dialog should mimic the current dialog. Sorting of a listbox and the proper alignment of the columns is not important (the engine doesn't support this yet). The code should only be used when --new-widgets is used as start switch since we're in a feature freeze at the moment.&lt;br /&gt;
&lt;br /&gt;
=== * Title screen ===&lt;br /&gt;
A start has been made for the new titlescreen&lt;br /&gt;
* src/gui/dialogs/title_screen.[c|h]pp&lt;br /&gt;
* data/gui/default/window/title_screen.cfg&lt;br /&gt;
This should be improved to include the buttons and alignment of the current title screen. The 'roll-over' image is not part of this task.&lt;br /&gt;
&lt;br /&gt;
=== Arrow keys for the slider ===&lt;br /&gt;
There's a new slider widget, but it doesn't support the keyboard yet.&lt;br /&gt;
gui/widgets/slider.[c|h]pp&lt;br /&gt;
&lt;br /&gt;
Clicking on the widget should capture the keyboard and then arrow left/right should move one step even if not all steps are visible.&lt;br /&gt;
&lt;br /&gt;
=== Slider sizing ===&lt;br /&gt;
There are some issues with the sizing of a slider.&lt;br /&gt;
gui/widgets/slider.[c|h]pp&lt;br /&gt;
&lt;br /&gt;
In a layout step it needs to try to shrink itself, not entirely sure where or how yet, best ask mordante on irc.&lt;br /&gt;
&lt;br /&gt;
== Savegame related stuff ==&lt;br /&gt;
&lt;br /&gt;
=== consistent player information ===&lt;br /&gt;
At the moment, the [player]-section for a campaign savegame will appear in two places: The root level of the savegame and the [replay_start]-section. This was due to a last-minute fix for 1.6 that was designed to be the least intrusive. The [player]-section should only be written to [replay_start] (and of course read from there as well).&lt;br /&gt;
&lt;br /&gt;
=== fix bug #13268 (save corruption through undo/redo of recalls [https://gna.org/bugs/?13268] ===&lt;br /&gt;
&lt;br /&gt;
== Miscellaneous ==&lt;br /&gt;
&lt;br /&gt;
=== More powerful village naming ===&lt;br /&gt;
'''Adding mountain names and other features to village names, having a second random name in village names'''&lt;br /&gt;
&lt;br /&gt;
Currently the village naming engine has a very good structure that could allow &lt;br /&gt;
more powerfull names to be generated. &lt;br /&gt;
Understanding how it works should be quite easy, and a few usefull improvements could be added.&lt;br /&gt;
&lt;br /&gt;
* Currently villages can use lake names and river names, this should be extended to other features like bridges, swamps, mountains etc...&lt;br /&gt;
* It would be nice to have a separate list of &amp;quot;first sylabus&amp;quot; and &amp;quot;last sylabus&amp;quot; for naming. That's not really needed in english, but some translations could use it&lt;br /&gt;
* Again, it is common to have villages with more than one &amp;quot;random&amp;quot; word in them. having a $name2 variable would be nice&lt;br /&gt;
&lt;br /&gt;
Euschn 24/03/2009&lt;br /&gt;
&lt;br /&gt;
=== Debug Mode ===&lt;br /&gt;
* New debug command functionality (setting additional status.variables, possibly terrain)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bugs ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
[[NotSoEasyCoding]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Future]]&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=EasyCoding&amp;diff=29327</id>
		<title>EasyCoding</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=EasyCoding&amp;diff=29327"/>
		<updated>2009-03-26T23:56:38Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Savegame related stuff */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Foreword ==&lt;br /&gt;
This page is here to document easy to do coding tasks. It is not here to double the feature request database, and should only be filled by people that know the code well enough to judge the difficulty of a given task. &lt;br /&gt;
&lt;br /&gt;
If you are such a person, you should feel free to edit this page.&lt;br /&gt;
&lt;br /&gt;
If you're not, you should post a feature request and discuss your idea on the forum or IRC. A coder with better knowledge of the code might give you the green light to add your feature here.&lt;br /&gt;
&lt;br /&gt;
Anybody should feel free to add &amp;quot;clues&amp;quot; to any tasks, that is entry points, traps to avoid, person to contact to discuss and so on.&lt;br /&gt;
&lt;br /&gt;
If you plan to work on a feature, write your name at the bottom of the feature, with the date. Note that if you are too long at working on a feature I'll &amp;quot;free&amp;quot; it back (that is if you're not working on it. If you have problems implementing it, just tell us....)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--[[User:Boucman|Boucman]] 20:48, 3 October 2006 (CEST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Since bugs are sometimes a good opportunity to get a first idea of the code, i will add some here that are easy to fix as soon as i stumble upon them (the one i had in mind is fixed already ;-).&lt;br /&gt;
&lt;br /&gt;
--Yogi Bear, 28 February 2008&lt;br /&gt;
&lt;br /&gt;
== MP related features ==&lt;br /&gt;
&lt;br /&gt;
=== Use different font for in-game chat ===&lt;br /&gt;
Since commas and dots are apparently hard to tell apart. As per FR #7470 [https://gna.org/bugs/?7470]&lt;br /&gt;
&lt;br /&gt;
== WML related features ==&lt;br /&gt;
&lt;br /&gt;
=== WML configurable village income / upkeep ===&lt;br /&gt;
Preferably as a [scenario], [side] or [campaign] keys. As per FR #6301 [https://gna.org/bugs/?6301]&lt;br /&gt;
&lt;br /&gt;
=== Add support of [if] for [scenario] ===&lt;br /&gt;
As per FR #4539 [https://gna.org/bugs/?4539]&lt;br /&gt;
&lt;br /&gt;
=== Make [have_unit] optionaly use full SUF ===&lt;br /&gt;
[have_unit] by default uses SUF but does not apply it to recall list. Introduce an optional key that will allow to lift that limitation.&lt;br /&gt;
&lt;br /&gt;
=== Side-specific results ===&lt;br /&gt;
Giving result=defeat or result=victory for specific sides. ([http://gna.org/bugs/index.php?4960 FR #4960]) -- [[User:dlr365|dlr365]] -- patch submitted [https://gna.org/bugs/index.php?4960]&lt;br /&gt;
&lt;br /&gt;
=== Support for leaderless multiplayergames ===&lt;br /&gt;
Add support for the WML key victory_when_enemies_defeated= in the scenario tag during multiplayergames. ([https://gna.org/bugs/index.php?8106 FR #8106])&lt;br /&gt;
&lt;br /&gt;
=== Support for standalone multiplayer scenarios ===&lt;br /&gt;
There used to be support for standalone scenarios in the userdata tree, in reorganising the trees this feature got lost and an add-on is now required to add a scenario.&lt;br /&gt;
Re-add this feature. It is probably a good idea to mirror the mainline multiplayer tree.&lt;br /&gt;
&lt;br /&gt;
=== Other Ideas ===&lt;br /&gt;
See [[FutureWML]]; some ideas there are easier than others.&lt;br /&gt;
&lt;br /&gt;
== Improvements to FormulaAI ==&lt;br /&gt;
&lt;br /&gt;
Add new formula functions, or minor improvements to the formula language. Make it easier to debug the formula language.&lt;br /&gt;
&lt;br /&gt;
Please discuss these with Dragonking, Sirp or Boucman&lt;br /&gt;
&lt;br /&gt;
=== Poisoning Improvement ===&lt;br /&gt;
&lt;br /&gt;
Writing a formula that will make units with poison attacks prioritize their targets to spead poison as much as possible, avoiding already poisoned units and other useless targets&lt;br /&gt;
&lt;br /&gt;
=== About to level formula ===&lt;br /&gt;
&lt;br /&gt;
Writing a formula that would handle units with only a few XP left to level and have them fight accordingly (most likely to kill or hit depending on XP needed, taking into account target's level)&lt;br /&gt;
&lt;br /&gt;
=== Healer improvements ===&lt;br /&gt;
&lt;br /&gt;
Handle units with healing power, moving them at places where they can provide the most healing&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Leader improvements ===&lt;br /&gt;
&lt;br /&gt;
A bit more complicated : special handling of units with leadership to have them support units. Only do it if it actually is usefull (less hits needed to kill the unit) and ability to help multiple units in a single turn (assuming enough MP)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Berserker improvements ===&lt;br /&gt;
&lt;br /&gt;
The default AI's strategy of attacking as much as possible is very bad with berserker... A simple AI that would prevent the berserker from attacking (and keeping him close to fight without being exposed) and attack when the chance to kill is high enough would be an interesting addition&lt;br /&gt;
&lt;br /&gt;
=== Debugging help ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;* provide a way for a formula to have a text float over hex (for debugging purpose).&amp;lt;/s&amp;gt; done by [[SummerOfCodeProposal_AI_Improvement_Crab|Crab]], patch submitted [https://gna.org/bugs/?13230]&lt;br /&gt;
* in debug mode, have all AI move print their name in the log&lt;br /&gt;
&lt;br /&gt;
=== New type of candidate moves : Global ===&lt;br /&gt;
 &lt;br /&gt;
to be called only once with no implicit variable&lt;br /&gt;
&lt;br /&gt;
== GUI related features ==&lt;br /&gt;
-------------------&lt;br /&gt;
&lt;br /&gt;
Note at the moment Mordante is working on a new GUI system, these &lt;br /&gt;
changes will probably affect the way these items need to be implemented.&lt;br /&gt;
Contact Mordante on IRC before starting to work on these.&lt;br /&gt;
  &lt;br /&gt;
--[[User:SkeletonCrew|SkeletonCrew]] 14:04, 9 March 2008 (EDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Theme Changes ===&lt;br /&gt;
&lt;br /&gt;
* allow custom themes to display values of WML variables ([http://gna.org/bugs/index.php?6209 FR #6209])&lt;br /&gt;
* hide the hourglass item from the statusbar when there is no timer&lt;br /&gt;
&lt;br /&gt;
=== Widget Changes ===&lt;br /&gt;
* show side number, name and team association information in the status table &lt;br /&gt;
* make games sortable in the lobby (open slots, total number of players, era, XP modifier, gold per village, fog/shroud) &lt;br /&gt;
* input history (chat, commands, ..) - note: rujasu is working on this feature&lt;br /&gt;
&lt;br /&gt;
== GUI2 related features ==&lt;br /&gt;
GUI2 is the new gui engine Mordante/SkeletonCrew is working on. &lt;br /&gt;
* Information on the wiki can be found here http://www.wesnoth.org/wiki/GUIToolkit&lt;br /&gt;
* The source code is under src/gui/&lt;br /&gt;
* The configuration config files are under data/gui/default&lt;br /&gt;
&lt;br /&gt;
Some tasks need the --new-widgets since the code is only shown in the experimental mode. Tasks which need this switch have the * in the title.&lt;br /&gt;
&lt;br /&gt;
=== Generic yes/no ok/cancel dialog ===&lt;br /&gt;
There's already a generic OK dialog &lt;br /&gt;
* src/gui/dialogs/message.[h|c]pp&lt;br /&gt;
* data/gui/default/window/message.cfg&lt;br /&gt;
&lt;br /&gt;
This dialog should have the option to show a cancel button as well and also let the caller of the dialog determine the text of the button. Maybe more buttons (4 in total) can be added to make the dialog more flexible.&lt;br /&gt;
&lt;br /&gt;
=== * Minimap ===&lt;br /&gt;
The minimap widget has already been made but is broken.&lt;br /&gt;
* src/gui/widgets/minimap.[c|h]pp&lt;br /&gt;
&lt;br /&gt;
The drawing code has been rewritten, but this widget hasn't been updated it's used in the MP connection dialog (which needs more work).&lt;br /&gt;
&lt;br /&gt;
=== * Savegame dialog ===&lt;br /&gt;
This is a new dialog to write and requires the minimap code to be fixed first. The dialog should mimic the current dialog. Sorting of a listbox and the proper alignment of the columns is not important (the engine doesn't support this yet). The code should only be used when --new-widgets is used as start switch since we're in a feature freeze at the moment.&lt;br /&gt;
&lt;br /&gt;
=== * Title screen ===&lt;br /&gt;
A start has been made for the new titlescreen&lt;br /&gt;
* src/gui/dialogs/title_screen.[c|h]pp&lt;br /&gt;
* data/gui/default/window/title_screen.cfg&lt;br /&gt;
This should be improved to include the buttons and alignment of the current title screen. The 'roll-over' image is not part of this task.&lt;br /&gt;
&lt;br /&gt;
=== Arrow keys for the slider ===&lt;br /&gt;
There's a new slider widget, but it doesn't support the keyboard yet.&lt;br /&gt;
gui/widgets/slider.[c|h]pp&lt;br /&gt;
&lt;br /&gt;
Clicking on the widget should capture the keyboard and then arrow left/right should move one step even if not all steps are visible.&lt;br /&gt;
&lt;br /&gt;
=== Slider sizing ===&lt;br /&gt;
There are some issues with the sizing of a slider.&lt;br /&gt;
gui/widgets/slider.[c|h]pp&lt;br /&gt;
&lt;br /&gt;
In a layout step it needs to try to shrink itself, not entirely sure where or how yet, best ask mordante on irc.&lt;br /&gt;
&lt;br /&gt;
== Savegame related stuff ==&lt;br /&gt;
&lt;br /&gt;
=== consistent player information ===&lt;br /&gt;
At the moment, the [player]-section for a campaign savegame will appear in two places: The root level of the savegame and the [replay_start]-section. This was due to a last-minute fix for 1.6 that was designed to be the least intrusive. The [player]-section should only be written to [replay_start] (and of course read from there as well).&lt;br /&gt;
&lt;br /&gt;
=== fix bug #13268 (save corruption through undo/redo [https://gna.org/bugs/?13268]&lt;br /&gt;
&lt;br /&gt;
== Miscellaneous ==&lt;br /&gt;
&lt;br /&gt;
=== More powerful village naming ===&lt;br /&gt;
'''Adding mountain names and other features to village names, having a second random name in village names'''&lt;br /&gt;
&lt;br /&gt;
Currently the village naming engine has a very good structure that could allow &lt;br /&gt;
more powerfull names to be generated. &lt;br /&gt;
Understanding how it works should be quite easy, and a few usefull improvements could be added.&lt;br /&gt;
&lt;br /&gt;
* Currently villages can use lake names and river names, this should be extended to other features like bridges, swamps, mountains etc...&lt;br /&gt;
* It would be nice to have a separate list of &amp;quot;first sylabus&amp;quot; and &amp;quot;last sylabus&amp;quot; for naming. That's not really needed in english, but some translations could use it&lt;br /&gt;
* Again, it is common to have villages with more than one &amp;quot;random&amp;quot; word in them. having a $name2 variable would be nice&lt;br /&gt;
&lt;br /&gt;
Euschn 24/03/2009&lt;br /&gt;
&lt;br /&gt;
=== Debug Mode ===&lt;br /&gt;
* New debug command functionality (setting additional status.variables, possibly terrain)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bugs ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
[[NotSoEasyCoding]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Future]]&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=EasyCoding&amp;diff=29326</id>
		<title>EasyCoding</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=EasyCoding&amp;diff=29326"/>
		<updated>2009-03-26T22:24:56Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Foreword ==&lt;br /&gt;
This page is here to document easy to do coding tasks. It is not here to double the feature request database, and should only be filled by people that know the code well enough to judge the difficulty of a given task. &lt;br /&gt;
&lt;br /&gt;
If you are such a person, you should feel free to edit this page.&lt;br /&gt;
&lt;br /&gt;
If you're not, you should post a feature request and discuss your idea on the forum or IRC. A coder with better knowledge of the code might give you the green light to add your feature here.&lt;br /&gt;
&lt;br /&gt;
Anybody should feel free to add &amp;quot;clues&amp;quot; to any tasks, that is entry points, traps to avoid, person to contact to discuss and so on.&lt;br /&gt;
&lt;br /&gt;
If you plan to work on a feature, write your name at the bottom of the feature, with the date. Note that if you are too long at working on a feature I'll &amp;quot;free&amp;quot; it back (that is if you're not working on it. If you have problems implementing it, just tell us....)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--[[User:Boucman|Boucman]] 20:48, 3 October 2006 (CEST)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Since bugs are sometimes a good opportunity to get a first idea of the code, i will add some here that are easy to fix as soon as i stumble upon them (the one i had in mind is fixed already ;-).&lt;br /&gt;
&lt;br /&gt;
--Yogi Bear, 28 February 2008&lt;br /&gt;
&lt;br /&gt;
== MP related features ==&lt;br /&gt;
&lt;br /&gt;
=== Use different font for in-game chat ===&lt;br /&gt;
Since commas and dots are apparently hard to tell apart. As per FR #7470 [https://gna.org/bugs/?7470]&lt;br /&gt;
&lt;br /&gt;
== WML related features ==&lt;br /&gt;
&lt;br /&gt;
=== WML configurable village income / upkeep ===&lt;br /&gt;
Preferably as a [scenario], [side] or [campaign] keys. As per FR #6301 [https://gna.org/bugs/?6301]&lt;br /&gt;
&lt;br /&gt;
=== Add support of [if] for [scenario] ===&lt;br /&gt;
As per FR #4539 [https://gna.org/bugs/?4539]&lt;br /&gt;
&lt;br /&gt;
=== Make [have_unit] optionaly use full SUF ===&lt;br /&gt;
[have_unit] by default uses SUF but does not apply it to recall list. Introduce an optional key that will allow to lift that limitation.&lt;br /&gt;
&lt;br /&gt;
=== Side-specific results ===&lt;br /&gt;
Giving result=defeat or result=victory for specific sides. ([http://gna.org/bugs/index.php?4960 FR #4960]) -- [[User:dlr365|dlr365]] -- patch submitted [https://gna.org/bugs/index.php?4960]&lt;br /&gt;
&lt;br /&gt;
=== Support for leaderless multiplayergames ===&lt;br /&gt;
Add support for the WML key victory_when_enemies_defeated= in the scenario tag during multiplayergames. ([https://gna.org/bugs/index.php?8106 FR #8106])&lt;br /&gt;
&lt;br /&gt;
=== Support for standalone multiplayer scenarios ===&lt;br /&gt;
There used to be support for standalone scenarios in the userdata tree, in reorganising the trees this feature got lost and an add-on is now required to add a scenario.&lt;br /&gt;
Re-add this feature. It is probably a good idea to mirror the mainline multiplayer tree.&lt;br /&gt;
&lt;br /&gt;
=== Other Ideas ===&lt;br /&gt;
See [[FutureWML]]; some ideas there are easier than others.&lt;br /&gt;
&lt;br /&gt;
== Improvements to FormulaAI ==&lt;br /&gt;
&lt;br /&gt;
Add new formula functions, or minor improvements to the formula language. Make it easier to debug the formula language.&lt;br /&gt;
&lt;br /&gt;
Please discuss these with Dragonking, Sirp or Boucman&lt;br /&gt;
&lt;br /&gt;
=== Poisoning Improvement ===&lt;br /&gt;
&lt;br /&gt;
Writing a formula that will make units with poison attacks prioritize their targets to spead poison as much as possible, avoiding already poisoned units and other useless targets&lt;br /&gt;
&lt;br /&gt;
=== About to level formula ===&lt;br /&gt;
&lt;br /&gt;
Writing a formula that would handle units with only a few XP left to level and have them fight accordingly (most likely to kill or hit depending on XP needed, taking into account target's level)&lt;br /&gt;
&lt;br /&gt;
=== Healer improvements ===&lt;br /&gt;
&lt;br /&gt;
Handle units with healing power, moving them at places where they can provide the most healing&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Leader improvements ===&lt;br /&gt;
&lt;br /&gt;
A bit more complicated : special handling of units with leadership to have them support units. Only do it if it actually is usefull (less hits needed to kill the unit) and ability to help multiple units in a single turn (assuming enough MP)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Berserker improvements ===&lt;br /&gt;
&lt;br /&gt;
The default AI's strategy of attacking as much as possible is very bad with berserker... A simple AI that would prevent the berserker from attacking (and keeping him close to fight without being exposed) and attack when the chance to kill is high enough would be an interesting addition&lt;br /&gt;
&lt;br /&gt;
=== Debugging help ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;* provide a way for a formula to have a text float over hex (for debugging purpose).&amp;lt;/s&amp;gt; done by [[SummerOfCodeProposal_AI_Improvement_Crab|Crab]], patch submitted [https://gna.org/bugs/?13230]&lt;br /&gt;
* in debug mode, have all AI move print their name in the log&lt;br /&gt;
&lt;br /&gt;
=== New type of candidate moves : Global ===&lt;br /&gt;
 &lt;br /&gt;
to be called only once with no implicit variable&lt;br /&gt;
&lt;br /&gt;
== GUI related features ==&lt;br /&gt;
-------------------&lt;br /&gt;
&lt;br /&gt;
Note at the moment Mordante is working on a new GUI system, these &lt;br /&gt;
changes will probably affect the way these items need to be implemented.&lt;br /&gt;
Contact Mordante on IRC before starting to work on these.&lt;br /&gt;
  &lt;br /&gt;
--[[User:SkeletonCrew|SkeletonCrew]] 14:04, 9 March 2008 (EDT)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Theme Changes ===&lt;br /&gt;
&lt;br /&gt;
* allow custom themes to display values of WML variables ([http://gna.org/bugs/index.php?6209 FR #6209])&lt;br /&gt;
* hide the hourglass item from the statusbar when there is no timer&lt;br /&gt;
&lt;br /&gt;
=== Widget Changes ===&lt;br /&gt;
* show side number, name and team association information in the status table &lt;br /&gt;
* make games sortable in the lobby (open slots, total number of players, era, XP modifier, gold per village, fog/shroud) &lt;br /&gt;
* input history (chat, commands, ..) - note: rujasu is working on this feature&lt;br /&gt;
&lt;br /&gt;
== GUI2 related features ==&lt;br /&gt;
GUI2 is the new gui engine Mordante/SkeletonCrew is working on. &lt;br /&gt;
* Information on the wiki can be found here http://www.wesnoth.org/wiki/GUIToolkit&lt;br /&gt;
* The source code is under src/gui/&lt;br /&gt;
* The configuration config files are under data/gui/default&lt;br /&gt;
&lt;br /&gt;
Some tasks need the --new-widgets since the code is only shown in the experimental mode. Tasks which need this switch have the * in the title.&lt;br /&gt;
&lt;br /&gt;
=== Generic yes/no ok/cancel dialog ===&lt;br /&gt;
There's already a generic OK dialog &lt;br /&gt;
* src/gui/dialogs/message.[h|c]pp&lt;br /&gt;
* data/gui/default/window/message.cfg&lt;br /&gt;
&lt;br /&gt;
This dialog should have the option to show a cancel button as well and also let the caller of the dialog determine the text of the button. Maybe more buttons (4 in total) can be added to make the dialog more flexible.&lt;br /&gt;
&lt;br /&gt;
=== * Minimap ===&lt;br /&gt;
The minimap widget has already been made but is broken.&lt;br /&gt;
* src/gui/widgets/minimap.[c|h]pp&lt;br /&gt;
&lt;br /&gt;
The drawing code has been rewritten, but this widget hasn't been updated it's used in the MP connection dialog (which needs more work).&lt;br /&gt;
&lt;br /&gt;
=== * Savegame dialog ===&lt;br /&gt;
This is a new dialog to write and requires the minimap code to be fixed first. The dialog should mimic the current dialog. Sorting of a listbox and the proper alignment of the columns is not important (the engine doesn't support this yet). The code should only be used when --new-widgets is used as start switch since we're in a feature freeze at the moment.&lt;br /&gt;
&lt;br /&gt;
=== * Title screen ===&lt;br /&gt;
A start has been made for the new titlescreen&lt;br /&gt;
* src/gui/dialogs/title_screen.[c|h]pp&lt;br /&gt;
* data/gui/default/window/title_screen.cfg&lt;br /&gt;
This should be improved to include the buttons and alignment of the current title screen. The 'roll-over' image is not part of this task.&lt;br /&gt;
&lt;br /&gt;
=== Arrow keys for the slider ===&lt;br /&gt;
There's a new slider widget, but it doesn't support the keyboard yet.&lt;br /&gt;
gui/widgets/slider.[c|h]pp&lt;br /&gt;
&lt;br /&gt;
Clicking on the widget should capture the keyboard and then arrow left/right should move one step even if not all steps are visible.&lt;br /&gt;
&lt;br /&gt;
=== Slider sizing ===&lt;br /&gt;
There are some issues with the sizing of a slider.&lt;br /&gt;
gui/widgets/slider.[c|h]pp&lt;br /&gt;
&lt;br /&gt;
In a layout step it needs to try to shrink itself, not entirely sure where or how yet, best ask mordante on irc.&lt;br /&gt;
&lt;br /&gt;
== Savegame related stuff ==&lt;br /&gt;
&lt;br /&gt;
=== consistent player information ===&lt;br /&gt;
At the moment, the [player]-section for a campaign savegame will appear in two places: The root level of the savegame and the [replay_start]-section. This was due to a last-minute fix for 1.6 that was designed to be the least intrusive. The [player]-section should only be written to [replay_start] (and of course read from there as well).&lt;br /&gt;
&lt;br /&gt;
== Miscellaneous ==&lt;br /&gt;
&lt;br /&gt;
=== More powerful village naming ===&lt;br /&gt;
'''Adding mountain names and other features to village names, having a second random name in village names'''&lt;br /&gt;
&lt;br /&gt;
Currently the village naming engine has a very good structure that could allow &lt;br /&gt;
more powerfull names to be generated. &lt;br /&gt;
Understanding how it works should be quite easy, and a few usefull improvements could be added.&lt;br /&gt;
&lt;br /&gt;
* Currently villages can use lake names and river names, this should be extended to other features like bridges, swamps, mountains etc...&lt;br /&gt;
* It would be nice to have a separate list of &amp;quot;first sylabus&amp;quot; and &amp;quot;last sylabus&amp;quot; for naming. That's not really needed in english, but some translations could use it&lt;br /&gt;
* Again, it is common to have villages with more than one &amp;quot;random&amp;quot; word in them. having a $name2 variable would be nice&lt;br /&gt;
&lt;br /&gt;
Euschn 24/03/2009&lt;br /&gt;
&lt;br /&gt;
=== Debug Mode ===&lt;br /&gt;
* New debug command functionality (setting additional status.variables, possibly terrain)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Bugs ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
[[NotSoEasyCoding]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Future]]&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=SoC_People_to_bug_on_IRC&amp;diff=29309</id>
		<title>SoC People to bug on IRC</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=SoC_People_to_bug_on_IRC&amp;diff=29309"/>
		<updated>2009-03-25T22:07:28Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* YogiHH or Piotr Cychowski (cycholka) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== People to bug on IRC ==&lt;br /&gt;
We have prepared a list of people with their &amp;quot;area of competence&amp;quot;. 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:&lt;br /&gt;
&lt;br /&gt;
=== boucman ===&lt;br /&gt;
As our &amp;quot;patch monkey&amp;quot; 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 &amp;quot;two patches, you're in&amp;quot; policy and the ReferenceWML part of the project.&lt;br /&gt;
&lt;br /&gt;
=== Daniel Franke (dfranke) ===&lt;br /&gt;
Daniel is the devteam's most recent addition, and has been primarily concerned with security auditing.  Bug him &amp;lt;i&amp;gt;privately&amp;lt;/i&amp;gt; if you think you've found a security issue.&lt;br /&gt;
&lt;br /&gt;
=== Dave alias Sirp ===&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
=== Dragonking ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
=== Elias Pscherning (elias) ===&lt;br /&gt;
He wrote the original version of campgen and as such will know a lot about what is needed to to make such an editor work correctly. The work on a scenario editor might be based upon campgen and as such his knowledge will be really helpful.&lt;br /&gt;
&lt;br /&gt;
=== Eric S. Raymond (ESR) ===&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
=== ilor ===&lt;br /&gt;
2008 GSoC student, worked on and maintains the new map editor in Wesnoth 1.5/1.6. Has some fairly recent experience with getting &amp;quot;in&amp;quot; the Wesnoth codebase.&lt;br /&gt;
&lt;br /&gt;
=== Karol Nowak (grzywacz) ===&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
=== loonycyborg ===&lt;br /&gt;
Maintainer of Wesnoth's SCons build system and windows packager. Might also help out with other buildsystems.&lt;br /&gt;
&lt;br /&gt;
=== Mordante ===&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
=== Nils Kneuper (Ivanovic) ===&lt;br /&gt;
He is doing nothing special, he just does some &amp;quot;administrative work&amp;quot; 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.&lt;br /&gt;
&lt;br /&gt;
=== Noy ===&lt;br /&gt;
Noy is an oddity among developers; he's got no coding skills whatsoever and possesses a limited understanding of computers, which is illustrated by his difficulty operating a Mac. Instead, Noy makes his contribution in gameplay and multiplayer design, drawing upon his background in social sciences research, military strategy and playing games online, to understand the effects of development on the playing community behavior. Along with Soliton, Noy is a useful conduit to discuss any issues in this area; just don't ask him about revising the level of randomness in the game.&lt;br /&gt;
&lt;br /&gt;
=== Noyga ===&lt;br /&gt;
Another versatile developer, on the C++ side he doesn't concentrate on a particular area, did some tweaks to improve translations in some languages (like enabling the female forms for names in various place) but know quite well the C++ side of units, abilities and WML. On the WML side he's an expert.&lt;br /&gt;
&lt;br /&gt;
=== Sapient ===&lt;br /&gt;
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. &lt;br /&gt;
&lt;br /&gt;
=== Shadow Master/ShikadiLord ===&lt;br /&gt;
He has been around since late 2007, and has worked in many areas of the engine, including the game events handler, the image path functors and the add-on management engine. As an add-on developer, he knows a lot about the WML language itself (preprocessor, basic structure) and its various single-player oriented dialects. He may also answer different kinds of questions about C++ as long as you don't start cursing the language.&lt;br /&gt;
&lt;br /&gt;
=== Soliton ===&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
=== YogiHH or Piotr Cychowski (cycholka) ===&lt;br /&gt;
Since they are the two developers who know most about building under Windows, they will probably be really helpful. Either if the student comes from the Windows side, or to help test resulting work to make sure that it does work on Windows and, for the case that it does not, to show them where problems are.&lt;br /&gt;
YogiHH also knows quite a bit about the game engine and everything that has to do with replays and savegames.&lt;br /&gt;
&lt;br /&gt;
=== zookeeper or Mythological or Rhuvaen ===&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
=== See also ===&lt;br /&gt;
[[SummerOfCodeIdeas|Summer of Code Ideas]] - The root where all information regarding SoC is (or better should be) linked from.&lt;br /&gt;
&lt;br /&gt;
[[Category:Summer of Code]]&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=SoC_Ideas_Savegame&amp;diff=29308</id>
		<title>SoC Ideas Savegame</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=SoC_Ideas_Savegame&amp;diff=29308"/>
		<updated>2009-03-25T22:02:37Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Proposal contents */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Reorganizing the savegame format ===&lt;br /&gt;
&lt;br /&gt;
Wesnoth basically supports two types of scenarios: Single player campaign (one campaign consists of several scenarios) and multiplayer (one isolated scenario). The savegame information for both share a lot of stuff, but there are also differences, information which is unique to each of them.&lt;br /&gt;
&lt;br /&gt;
Lately, there is another development showing up, which wasn't really considered in the beginning of wesnoth: Multiplayer campaigns. Those kind of work at the moment, but they are a little uncomfortable, because the savegame format does not support them good enough.&lt;br /&gt;
&lt;br /&gt;
Your task will be to develop a uniform savegame format, that allows to store all information needed for any kind of scenario and to write the code supporting this format.&lt;br /&gt;
&lt;br /&gt;
==== General description ====&lt;br /&gt;
&lt;br /&gt;
The idea behind this project is that there won't be any significant differences (at least regarding the savegame format) between single player and multiplayer anymore. Rather, multiplayer is seen as an enhancement to single player with the main difference being that multiple player information will have to be stored.&lt;br /&gt;
&lt;br /&gt;
From the coding side of perspective, you might think that you will be able to reuse lots of existing code. In a way this will be true, but there are also some specialties about it:&lt;br /&gt;
&lt;br /&gt;
* At the moment, the code for processing savegames is spread along several files and it is full of workarounds to serve the three main 'consumers': Single player scenarios, multiplayer scenarios and replays. In other words: It is a mess, one of the worst you will be able to find within the wesnoth codebase. Every new coder has to struggle just to ''find'' the functionality he is looking for and senior developers desperately try to avoid any changes to it.&lt;br /&gt;
* Although you will be able to reuse some of the code, you also will have to think of a new design, that combines the current still separated approaches to the different types of scenarios. It might turn out, that starting your code from scratch is a better idea than rewriting the existing stuff.&lt;br /&gt;
* Basically, the challenge of this project won't be writing the code in the first place, but rather figuring out what is the best way to rework it: How do i minimize impact? How can i design the code so that it is easy to understand and maintainable? What information is needed upfront to achieve that?. These are the important questions that you will tackle in close teamwork with your mentor.&lt;br /&gt;
* The intent of this project is to adapt the content of savegames, not the format that content is stored in. WML has been proven to be an efficient format and we don't want to change it.&lt;br /&gt;
&lt;br /&gt;
==== Required knowledge and talent ====&lt;br /&gt;
&lt;br /&gt;
* ''A minimal knowledge of C++ is required, a good knowledge of C++ is desired :'' The main challenge will be to become familiar with the common style of wesnoth coding, since we widely use some advanced C++ features like STL and rely on a couple of libraries. However, the savegame processing code is relatively straightforward and not as complex as many other areas.&lt;br /&gt;
* ''Design capabilities: '' Because your code will have to integrate into the current wesnoth architecture, you can't just grab the keyboard and start hacking (well, you shouldn't do that anyway but that's another topic for another day ;-). So a very important part of this project will be to provide a good design and put some thought into that. It is also essential, that this won't happen solely inside your head but that you also provide some visible results (see the list of milestones and deliverables below). Static (or maybe even dynamic) UML models would be really cool, but they are not required. Any other technique, be it a diagram or simple text will do as well, as long as it contains the needed information. ''Depending on your experience and skills, your mentor will closely interact with you throughout this work and give you the support you need.''&lt;br /&gt;
* ''Good social interaction with the multiplayer community :'' As mentioned before, multiplayer campaigns are one of the triggers for this task. There are some multiplayer campaigns and part of your work will be to get in contact with the maintainers and get an understanding of the current problems in order to decide how to support needed features with savegame information.&lt;br /&gt;
&lt;br /&gt;
==== Milestones and deliverables ====&lt;br /&gt;
&lt;br /&gt;
Some of the milestones will become obvious after the design phase is finished, but here are some ideas of what needs to be done:&lt;br /&gt;
&lt;br /&gt;
* ''Being familiar with the code :'' To get a better understanding, you will have to examine the currently available code, find all the places that deal with savegame information and roughly understand what their specific task is about. This should be documented. You will also have to learn the text representation of savegame information which is done by WML, a markup language that is widely used within wesnoth. Play a little with the different kind of scenarios and see what savegames get out of that and what the code is doing with them.&lt;br /&gt;
* ''Design :'' Evaluating the current problems with multiplayer campaigns will be needed for this phase. After you have done this, you will have to develop a new savegame format and a design for the code that is processing it. The delivery will be at least some kind of static model (preferably UML but other techniques will do as well) and a roadmap of steps to get from the current code to the new one.&lt;br /&gt;
* ''Implementing :'' It is hard to give detailed information about the content of this phase. But basically it will be implementing the roadmap steps one by one.&lt;br /&gt;
&lt;br /&gt;
=== Proposal contents ===&lt;br /&gt;
Here are some questions and ideas to help you dive into the topic. They are meant to help you get a better idea of what this project is going to be about. They are also meant to show us, how much you made yourself familiar with wesnoth's code, as this is very important to us. We are mostly ambitious and passionate ourselves, and we seek for students that are alike. Other (wesnoth) projects provide the opportunity to present prototypes, which won't be working here. Therefore it is even more important, that you implement some patches to show us your coding skills.&amp;lt;br&amp;gt;&lt;br /&gt;
However, there is some preparation you can do by now already. You should also add your thoughts about this to the proposal you are giving us. If you get accepted, this will serve as a starting point for further fleshing out things. &lt;br /&gt;
&lt;br /&gt;
Don't hesitate to seek for help, if you have difficulties with some of the questions. I (YogiHH) will be on IRC most of the time in the evening (GMT+1) hours. You can also reach me by mail (joerg.hinrichs@alice-dsl.de) if that is not sufficient. Also keep in mind, that this is not a typical test with &amp;amp;quot;right and wrong&amp;amp;quot;. It is clear that being new you won't be able to provide the &amp;amp;quot;perfect proposal&amp;amp;quot; right out of the box. We are more interested in how you approach this task, how you communicate and if you can focus on the relevant stuff without losing yourself into details. So know what you are talking about, be innovative and take initiative.&lt;br /&gt;
&lt;br /&gt;
The following two links are meant to give you further information for that:&amp;lt;br&amp;gt;&lt;br /&gt;
[[SavegameCode|savegame code]] - Contains the pieces of codes that deal with savegames and where to find them&amp;lt;br&amp;gt;&lt;br /&gt;
[[Summer of Code:SavegameWMLMapping|WML - object mapping]] - A mapping table to show you which objects hold the information of the savegame WML content&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1.&lt;br /&gt;
&amp;lt;p&amp;gt;If you take a closer look at the code, you will find, that there are different architectures of design to implement persistence. One is a more layered approach, which separates the creation and population of objects from persistent information (a savegame file, represented by a config object) from the rest. Config_adapter.cpp is an example of that idea. The other passes the raw persistence information (=config object) to the object to be created and lets it do the work. An example for this is the game_state constructor that takes a config object as argument.&amp;lt;/p&amp;gt;&lt;br /&gt;
Which are the pro's and con's of those approaches with regard to encapsulation and maintenance? What would you choose for wesnoth's savegame processing?&lt;br /&gt;
&lt;br /&gt;
2.&lt;br /&gt;
If your task is to remove config_adapter.cpp, how would you do that? Where would you put the code instead? And what are your reasons for that?&lt;br /&gt;
&lt;br /&gt;
3.&lt;br /&gt;
The &amp;lt;i&amp;gt;player_info&amp;lt;/i&amp;gt; struct and the &amp;lt;i&amp;gt;team&amp;lt;/i&amp;gt; class share some information (for example units that belong to a certain side). Do you think it is feasible to mold those two into one? And what are your reasons?&lt;br /&gt;
&lt;br /&gt;
4.&lt;br /&gt;
The same question is to be asked for the &amp;lt;i&amp;gt;game_state&amp;lt;/i&amp;gt; class and the &amp;lt;i&amp;gt;gamestatus&amp;lt;/i&amp;gt; class.&lt;br /&gt;
&lt;br /&gt;
5.&lt;br /&gt;
The second link above contains a mapping table, that matches savegame WML tags to C++ objects. Identify candidates for redundancies. Warning: Keep in mind, that WML is a mighty beast! Just one example: Through WML events, a map can change throughout a scenario. Therefore it makes a lot of sense to put that map into the [snapshot] and [replay_start] tags respectively, although at first glance it looks like we could put it into some central place. After you identified candidates for redundant information, you might want to talk to one of the WML experts to make sure those information is really redundant.&lt;br /&gt;
&lt;br /&gt;
6.&lt;br /&gt;
Based on the thoughts you layed out in 1-5, what would the new savegame structure you propose be like? A level of detail like it is outlined in the mapping table will suffice here. Please also make sure, that your proposal is consistent with the idea of multiplayer campaigns.&lt;br /&gt;
&lt;br /&gt;
=== See also ===&lt;br /&gt;
[[SummerOfCodeIdeas|Summer of Code Ideas]] - The root where all information regarding SoC is (or better should be) linked from.&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:SkeletonCrew#Savegame_format|savegame contents]] - Some ideas about the current and future content of savegames.&amp;lt;br&amp;gt;&lt;br /&gt;
[[SavefileWML|Savegame WML]] - Information about the format used for storing savegame information.&lt;br /&gt;
[[Category:Summer of Code]]&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=SoC_Ideas_Savegame&amp;diff=29307</id>
		<title>SoC Ideas Savegame</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=SoC_Ideas_Savegame&amp;diff=29307"/>
		<updated>2009-03-25T21:57:08Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Proposal contents */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Reorganizing the savegame format ===&lt;br /&gt;
&lt;br /&gt;
Wesnoth basically supports two types of scenarios: Single player campaign (one campaign consists of several scenarios) and multiplayer (one isolated scenario). The savegame information for both share a lot of stuff, but there are also differences, information which is unique to each of them.&lt;br /&gt;
&lt;br /&gt;
Lately, there is another development showing up, which wasn't really considered in the beginning of wesnoth: Multiplayer campaigns. Those kind of work at the moment, but they are a little uncomfortable, because the savegame format does not support them good enough.&lt;br /&gt;
&lt;br /&gt;
Your task will be to develop a uniform savegame format, that allows to store all information needed for any kind of scenario and to write the code supporting this format.&lt;br /&gt;
&lt;br /&gt;
==== General description ====&lt;br /&gt;
&lt;br /&gt;
The idea behind this project is that there won't be any significant differences (at least regarding the savegame format) between single player and multiplayer anymore. Rather, multiplayer is seen as an enhancement to single player with the main difference being that multiple player information will have to be stored.&lt;br /&gt;
&lt;br /&gt;
From the coding side of perspective, you might think that you will be able to reuse lots of existing code. In a way this will be true, but there are also some specialties about it:&lt;br /&gt;
&lt;br /&gt;
* At the moment, the code for processing savegames is spread along several files and it is full of workarounds to serve the three main 'consumers': Single player scenarios, multiplayer scenarios and replays. In other words: It is a mess, one of the worst you will be able to find within the wesnoth codebase. Every new coder has to struggle just to ''find'' the functionality he is looking for and senior developers desperately try to avoid any changes to it.&lt;br /&gt;
* Although you will be able to reuse some of the code, you also will have to think of a new design, that combines the current still separated approaches to the different types of scenarios. It might turn out, that starting your code from scratch is a better idea than rewriting the existing stuff.&lt;br /&gt;
* Basically, the challenge of this project won't be writing the code in the first place, but rather figuring out what is the best way to rework it: How do i minimize impact? How can i design the code so that it is easy to understand and maintainable? What information is needed upfront to achieve that?. These are the important questions that you will tackle in close teamwork with your mentor.&lt;br /&gt;
* The intent of this project is to adapt the content of savegames, not the format that content is stored in. WML has been proven to be an efficient format and we don't want to change it.&lt;br /&gt;
&lt;br /&gt;
==== Required knowledge and talent ====&lt;br /&gt;
&lt;br /&gt;
* ''A minimal knowledge of C++ is required, a good knowledge of C++ is desired :'' The main challenge will be to become familiar with the common style of wesnoth coding, since we widely use some advanced C++ features like STL and rely on a couple of libraries. However, the savegame processing code is relatively straightforward and not as complex as many other areas.&lt;br /&gt;
* ''Design capabilities: '' Because your code will have to integrate into the current wesnoth architecture, you can't just grab the keyboard and start hacking (well, you shouldn't do that anyway but that's another topic for another day ;-). So a very important part of this project will be to provide a good design and put some thought into that. It is also essential, that this won't happen solely inside your head but that you also provide some visible results (see the list of milestones and deliverables below). Static (or maybe even dynamic) UML models would be really cool, but they are not required. Any other technique, be it a diagram or simple text will do as well, as long as it contains the needed information. ''Depending on your experience and skills, your mentor will closely interact with you throughout this work and give you the support you need.''&lt;br /&gt;
* ''Good social interaction with the multiplayer community :'' As mentioned before, multiplayer campaigns are one of the triggers for this task. There are some multiplayer campaigns and part of your work will be to get in contact with the maintainers and get an understanding of the current problems in order to decide how to support needed features with savegame information.&lt;br /&gt;
&lt;br /&gt;
==== Milestones and deliverables ====&lt;br /&gt;
&lt;br /&gt;
Some of the milestones will become obvious after the design phase is finished, but here are some ideas of what needs to be done:&lt;br /&gt;
&lt;br /&gt;
* ''Being familiar with the code :'' To get a better understanding, you will have to examine the currently available code, find all the places that deal with savegame information and roughly understand what their specific task is about. This should be documented. You will also have to learn the text representation of savegame information which is done by WML, a markup language that is widely used within wesnoth. Play a little with the different kind of scenarios and see what savegames get out of that and what the code is doing with them.&lt;br /&gt;
* ''Design :'' Evaluating the current problems with multiplayer campaigns will be needed for this phase. After you have done this, you will have to develop a new savegame format and a design for the code that is processing it. The delivery will be at least some kind of static model (preferably UML but other techniques will do as well) and a roadmap of steps to get from the current code to the new one.&lt;br /&gt;
* ''Implementing :'' It is hard to give detailed information about the content of this phase. But basically it will be implementing the roadmap steps one by one.&lt;br /&gt;
&lt;br /&gt;
=== Proposal contents ===&lt;br /&gt;
Here are some questions and ideas to help you dive into the topic. They are meant to help you get a better idea of what this project is going to be about. They are also meant to show us, how much you made yourself familiar with wesnoth's code, as this is very important to us. We are mostly ambitious and passionate ourselves, and we seek for students that are alike. Other (wesnoth) projects provide the opportunity to present prototypes, which won't be working here. Therefore it is even more important, that you implement some patches to show us your coding skills.&amp;lt;br&amp;gt;&lt;br /&gt;
However, there is some preparation you can do by now already. You should also add your thoughts about this to the proposal you are giving us. If you get accepted, this will serve as a starting point for further fleshing out things. &lt;br /&gt;
&lt;br /&gt;
Don't hesitate to seek for help, if you have difficulties with some of the questions. I (YogiHH) will be on IRC most of the time in the evening (GMT+1) hours. You can also reach me by mail (joerg.hinrichs@alice-dsl.de) if that is not sufficient. Also keep in mind, that this is not a typical test with &amp;amp;quot;right and wrong&amp;amp;quot;. It is clear that being new you won't be able to provide the &amp;amp;quot;perfect proposal&amp;amp;quot; right out of the box. We are more interested in how you approach this task, how you communicate and if you can focus on the relevant stuff without losing yourself into details. So know what you are talking about, be innovative and take initiative.&lt;br /&gt;
&lt;br /&gt;
The following two links are meant to give you further information for that:&amp;lt;br&amp;gt;&lt;br /&gt;
[[SavegameCode|savegame code]] - Contains the pieces of codes that deal with savegames and where to find them&amp;lt;br&amp;gt;&lt;br /&gt;
[[Summer of Code:SavegameWMLMapping|WML - object mapping]] - A mapping table to show you which objects hold the information of the savegame WML content&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1.&lt;br /&gt;
&amp;lt;p&amp;gt;If you take a closer look at the code, you will find, that there are different architectures of design to implement persistence. One is a more layered approach, which separates the creation and population of objects from persistent information (a savegame file, represented by a config object) from the rest. Config_adapter.cpp is an example of that idea. The other passes the raw persistence information (=config object) to the object to be created and lets it do the work. An example for this is the game_state constructor that takes a config object as argument.&amp;lt;/p&amp;gt;&lt;br /&gt;
Which are the pro's and con's of those approaches with regard to encapsulation and maintenance? What would you choose for wesnoth's savegame processing?&lt;br /&gt;
&lt;br /&gt;
2.&lt;br /&gt;
If your task is to remove config_adapter.cpp, how would you do that? Where would you put the code instead? And what are your reasons for that?&lt;br /&gt;
&lt;br /&gt;
3.&lt;br /&gt;
The &amp;lt;i&amp;gt;player_info&amp;lt;/i&amp;gt; struct and the &amp;lt;i&amp;gt;team&amp;lt;/i&amp;gt; class share some information (for example units that belong to a certain side). Do you think it is a feasible idea to mold those two into one? And what are your reasons?&lt;br /&gt;
&lt;br /&gt;
4.&lt;br /&gt;
The same question is to be asked for the &amp;lt;i&amp;gt;game_state&amp;lt;/i&amp;gt; class and the &amp;lt;i&amp;gt;gamestatus&amp;lt;/i&amp;gt; class.&lt;br /&gt;
&lt;br /&gt;
5.&lt;br /&gt;
The second link above contains a mapping table, that matches savegame WML tags to C++ objects. Identify candidates for redundancies. Warning: Keep in mind, that WML is a mighty beast! Just one example: Through WML events, a map can change throughout a scenario. Therefore it makes a lot of sense to put that map into the [snapshot] and [replay_start] tags respectively, although at first glance it looks like we could put it into some central place. After you identified candidates for redundant information, you might want to talk to one of the WML experts to make sure those information is really redundant.&lt;br /&gt;
&lt;br /&gt;
6.&lt;br /&gt;
Based on the thoughts you layed out in 1-5, what would the new savegame structure you propose be like? A level of detail like it is outlined in the mapping table will suffice here. Please also make sure, that your proposal is consistent with the idea of multiplayer campaigns.&lt;br /&gt;
&lt;br /&gt;
=== See also ===&lt;br /&gt;
[[SummerOfCodeIdeas|Summer of Code Ideas]] - The root where all information regarding SoC is (or better should be) linked from.&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:SkeletonCrew#Savegame_format|savegame contents]] - Some ideas about the current and future content of savegames.&amp;lt;br&amp;gt;&lt;br /&gt;
[[SavefileWML|Savegame WML]] - Information about the format used for storing savegame information.&lt;br /&gt;
[[Category:Summer of Code]]&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=SoC_Ideas_Savegame&amp;diff=29306</id>
		<title>SoC Ideas Savegame</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=SoC_Ideas_Savegame&amp;diff=29306"/>
		<updated>2009-03-25T21:56:22Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Proposal contents */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Reorganizing the savegame format ===&lt;br /&gt;
&lt;br /&gt;
Wesnoth basically supports two types of scenarios: Single player campaign (one campaign consists of several scenarios) and multiplayer (one isolated scenario). The savegame information for both share a lot of stuff, but there are also differences, information which is unique to each of them.&lt;br /&gt;
&lt;br /&gt;
Lately, there is another development showing up, which wasn't really considered in the beginning of wesnoth: Multiplayer campaigns. Those kind of work at the moment, but they are a little uncomfortable, because the savegame format does not support them good enough.&lt;br /&gt;
&lt;br /&gt;
Your task will be to develop a uniform savegame format, that allows to store all information needed for any kind of scenario and to write the code supporting this format.&lt;br /&gt;
&lt;br /&gt;
==== General description ====&lt;br /&gt;
&lt;br /&gt;
The idea behind this project is that there won't be any significant differences (at least regarding the savegame format) between single player and multiplayer anymore. Rather, multiplayer is seen as an enhancement to single player with the main difference being that multiple player information will have to be stored.&lt;br /&gt;
&lt;br /&gt;
From the coding side of perspective, you might think that you will be able to reuse lots of existing code. In a way this will be true, but there are also some specialties about it:&lt;br /&gt;
&lt;br /&gt;
* At the moment, the code for processing savegames is spread along several files and it is full of workarounds to serve the three main 'consumers': Single player scenarios, multiplayer scenarios and replays. In other words: It is a mess, one of the worst you will be able to find within the wesnoth codebase. Every new coder has to struggle just to ''find'' the functionality he is looking for and senior developers desperately try to avoid any changes to it.&lt;br /&gt;
* Although you will be able to reuse some of the code, you also will have to think of a new design, that combines the current still separated approaches to the different types of scenarios. It might turn out, that starting your code from scratch is a better idea than rewriting the existing stuff.&lt;br /&gt;
* Basically, the challenge of this project won't be writing the code in the first place, but rather figuring out what is the best way to rework it: How do i minimize impact? How can i design the code so that it is easy to understand and maintainable? What information is needed upfront to achieve that?. These are the important questions that you will tackle in close teamwork with your mentor.&lt;br /&gt;
* The intent of this project is to adapt the content of savegames, not the format that content is stored in. WML has been proven to be an efficient format and we don't want to change it.&lt;br /&gt;
&lt;br /&gt;
==== Required knowledge and talent ====&lt;br /&gt;
&lt;br /&gt;
* ''A minimal knowledge of C++ is required, a good knowledge of C++ is desired :'' The main challenge will be to become familiar with the common style of wesnoth coding, since we widely use some advanced C++ features like STL and rely on a couple of libraries. However, the savegame processing code is relatively straightforward and not as complex as many other areas.&lt;br /&gt;
* ''Design capabilities: '' Because your code will have to integrate into the current wesnoth architecture, you can't just grab the keyboard and start hacking (well, you shouldn't do that anyway but that's another topic for another day ;-). So a very important part of this project will be to provide a good design and put some thought into that. It is also essential, that this won't happen solely inside your head but that you also provide some visible results (see the list of milestones and deliverables below). Static (or maybe even dynamic) UML models would be really cool, but they are not required. Any other technique, be it a diagram or simple text will do as well, as long as it contains the needed information. ''Depending on your experience and skills, your mentor will closely interact with you throughout this work and give you the support you need.''&lt;br /&gt;
* ''Good social interaction with the multiplayer community :'' As mentioned before, multiplayer campaigns are one of the triggers for this task. There are some multiplayer campaigns and part of your work will be to get in contact with the maintainers and get an understanding of the current problems in order to decide how to support needed features with savegame information.&lt;br /&gt;
&lt;br /&gt;
==== Milestones and deliverables ====&lt;br /&gt;
&lt;br /&gt;
Some of the milestones will become obvious after the design phase is finished, but here are some ideas of what needs to be done:&lt;br /&gt;
&lt;br /&gt;
* ''Being familiar with the code :'' To get a better understanding, you will have to examine the currently available code, find all the places that deal with savegame information and roughly understand what their specific task is about. This should be documented. You will also have to learn the text representation of savegame information which is done by WML, a markup language that is widely used within wesnoth. Play a little with the different kind of scenarios and see what savegames get out of that and what the code is doing with them.&lt;br /&gt;
* ''Design :'' Evaluating the current problems with multiplayer campaigns will be needed for this phase. After you have done this, you will have to develop a new savegame format and a design for the code that is processing it. The delivery will be at least some kind of static model (preferably UML but other techniques will do as well) and a roadmap of steps to get from the current code to the new one.&lt;br /&gt;
* ''Implementing :'' It is hard to give detailed information about the content of this phase. But basically it will be implementing the roadmap steps one by one.&lt;br /&gt;
&lt;br /&gt;
=== Proposal contents ===&lt;br /&gt;
Here are some questions and ideas to help you dive into the topic. They are meant to help you get a better idea of what this project is going to be about. They are also meant to show us, how much you made yourself familiar with wesnoth's code, as this is very important to us. We are mostly ambitious and passionate ourselves, and we seek for students that are alike. Other (wesnoth) projects provide the opportunity to present prototypes, which won't be working here. Therefore it is even more important, that you implement some patches to show us your coding skills.&amp;lt;br&amp;gt;&lt;br /&gt;
However, there is some preparation you can do by now already. You should also add your thoughts about this to the proposal you are giving us. If you get accepted, this will serve as a starting point for further fleshing out things. &lt;br /&gt;
&lt;br /&gt;
Don't hesitate to seek for help, if you have difficulties with some of the questions. I (YogiHH) will be on IRC most of the time in the evening (GMT+1) hours. You can also reach me by mail (joerg.hinrichs@alice-dsl.de) if that is not sufficient. Also keep in mind, that this is not a typical test with &amp;amp;quot;right and wrong&amp;amp;quot;. It is clear that being new you won't be able to make the &amp;amp;quot;perfect proposal&amp;amp;quot; right out of the box. We are more interested in how you approach this task, how you communicate and if you can focus on the relevant stuff without losing yourself into details. So know what you are talking about, be innovative and take initiative.&lt;br /&gt;
&lt;br /&gt;
The following two links are meant to give you further information for that:&amp;lt;br&amp;gt;&lt;br /&gt;
[[SavegameCode|savegame code]] - Contains the pieces of codes that deal with savegames and where to find them&amp;lt;br&amp;gt;&lt;br /&gt;
[[Summer of Code:SavegameWMLMapping|WML - object mapping]] - A mapping table to show you which objects hold the information of the savegame WML content&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1.&lt;br /&gt;
&amp;lt;p&amp;gt;If you take a closer look at the code, you will find, that there are different architectures of design to implement persistence. One is a more layered approach, which separates the creation and population of objects from persistent information (a savegame file, represented by a config object) from the rest. Config_adapter.cpp is an example of that idea. The other passes the raw persistence information (=config object) to the object to be created and lets it do the work. An example for this is the game_state constructor that takes a config object as argument.&amp;lt;/p&amp;gt;&lt;br /&gt;
Which are the pro's and con's of those approaches with regard to encapsulation and maintenance? What would you choose for wesnoth's savegame processing?&lt;br /&gt;
&lt;br /&gt;
2.&lt;br /&gt;
If your task is to remove config_adapter.cpp, how would you do that? Where would you put the code instead? And what are your reasons for that?&lt;br /&gt;
&lt;br /&gt;
3.&lt;br /&gt;
The &amp;lt;i&amp;gt;player_info&amp;lt;/i&amp;gt; struct and the &amp;lt;i&amp;gt;team&amp;lt;/i&amp;gt; class share some information (for example units that belong to a certain side). Do you think it is a feasible idea to mold those two into one? And what are your reasons?&lt;br /&gt;
&lt;br /&gt;
4.&lt;br /&gt;
The same question is to be asked for the &amp;lt;i&amp;gt;game_state&amp;lt;/i&amp;gt; class and the &amp;lt;i&amp;gt;gamestatus&amp;lt;/i&amp;gt; class.&lt;br /&gt;
&lt;br /&gt;
5.&lt;br /&gt;
The second link above contains a mapping table, that matches savegame WML tags to C++ objects. Identify candidates for redundancies. Warning: Keep in mind, that WML is a mighty beast! Just one example: Through WML events, a map can change throughout a scenario. Therefore it makes a lot of sense to put that map into the [snapshot] and [replay_start] tags respectively, although at first glance it looks like we could put it into some central place. After you identified candidates for redundant information, you might want to talk to one of the WML experts to make sure those information is really redundant.&lt;br /&gt;
&lt;br /&gt;
6.&lt;br /&gt;
Based on the thoughts you layed out in 1-5, what would the new savegame structure you propose be like? A level of detail like it is outlined in the mapping table will suffice here. Please also make sure, that your proposal is consistent with the idea of multiplayer campaigns.&lt;br /&gt;
&lt;br /&gt;
=== See also ===&lt;br /&gt;
[[SummerOfCodeIdeas|Summer of Code Ideas]] - The root where all information regarding SoC is (or better should be) linked from.&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:SkeletonCrew#Savegame_format|savegame contents]] - Some ideas about the current and future content of savegames.&amp;lt;br&amp;gt;&lt;br /&gt;
[[SavefileWML|Savegame WML]] - Information about the format used for storing savegame information.&lt;br /&gt;
[[Category:Summer of Code]]&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=SoC_Ideas_Savegame&amp;diff=29305</id>
		<title>SoC Ideas Savegame</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=SoC_Ideas_Savegame&amp;diff=29305"/>
		<updated>2009-03-25T21:29:31Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: /* Proposal contents (under construction) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Reorganizing the savegame format ===&lt;br /&gt;
&lt;br /&gt;
Wesnoth basically supports two types of scenarios: Single player campaign (one campaign consists of several scenarios) and multiplayer (one isolated scenario). The savegame information for both share a lot of stuff, but there are also differences, information which is unique to each of them.&lt;br /&gt;
&lt;br /&gt;
Lately, there is another development showing up, which wasn't really considered in the beginning of wesnoth: Multiplayer campaigns. Those kind of work at the moment, but they are a little uncomfortable, because the savegame format does not support them good enough.&lt;br /&gt;
&lt;br /&gt;
Your task will be to develop a uniform savegame format, that allows to store all information needed for any kind of scenario and to write the code supporting this format.&lt;br /&gt;
&lt;br /&gt;
==== General description ====&lt;br /&gt;
&lt;br /&gt;
The idea behind this project is that there won't be any significant differences (at least regarding the savegame format) between single player and multiplayer anymore. Rather, multiplayer is seen as an enhancement to single player with the main difference being that multiple player information will have to be stored.&lt;br /&gt;
&lt;br /&gt;
From the coding side of perspective, you might think that you will be able to reuse lots of existing code. In a way this will be true, but there are also some specialties about it:&lt;br /&gt;
&lt;br /&gt;
* At the moment, the code for processing savegames is spread along several files and it is full of workarounds to serve the three main 'consumers': Single player scenarios, multiplayer scenarios and replays. In other words: It is a mess, one of the worst you will be able to find within the wesnoth codebase. Every new coder has to struggle just to ''find'' the functionality he is looking for and senior developers desperately try to avoid any changes to it.&lt;br /&gt;
* Although you will be able to reuse some of the code, you also will have to think of a new design, that combines the current still separated approaches to the different types of scenarios. It might turn out, that starting your code from scratch is a better idea than rewriting the existing stuff.&lt;br /&gt;
* Basically, the challenge of this project won't be writing the code in the first place, but rather figuring out what is the best way to rework it: How do i minimize impact? How can i design the code so that it is easy to understand and maintainable? What information is needed upfront to achieve that?. These are the important questions that you will tackle in close teamwork with your mentor.&lt;br /&gt;
* The intent of this project is to adapt the content of savegames, not the format that content is stored in. WML has been proven to be an efficient format and we don't want to change it.&lt;br /&gt;
&lt;br /&gt;
==== Required knowledge and talent ====&lt;br /&gt;
&lt;br /&gt;
* ''A minimal knowledge of C++ is required, a good knowledge of C++ is desired :'' The main challenge will be to become familiar with the common style of wesnoth coding, since we widely use some advanced C++ features like STL and rely on a couple of libraries. However, the savegame processing code is relatively straightforward and not as complex as many other areas.&lt;br /&gt;
* ''Design capabilities: '' Because your code will have to integrate into the current wesnoth architecture, you can't just grab the keyboard and start hacking (well, you shouldn't do that anyway but that's another topic for another day ;-). So a very important part of this project will be to provide a good design and put some thought into that. It is also essential, that this won't happen solely inside your head but that you also provide some visible results (see the list of milestones and deliverables below). Static (or maybe even dynamic) UML models would be really cool, but they are not required. Any other technique, be it a diagram or simple text will do as well, as long as it contains the needed information. ''Depending on your experience and skills, your mentor will closely interact with you throughout this work and give you the support you need.''&lt;br /&gt;
* ''Good social interaction with the multiplayer community :'' As mentioned before, multiplayer campaigns are one of the triggers for this task. There are some multiplayer campaigns and part of your work will be to get in contact with the maintainers and get an understanding of the current problems in order to decide how to support needed features with savegame information.&lt;br /&gt;
&lt;br /&gt;
==== Milestones and deliverables ====&lt;br /&gt;
&lt;br /&gt;
Some of the milestones will become obvious after the design phase is finished, but here are some ideas of what needs to be done:&lt;br /&gt;
&lt;br /&gt;
* ''Being familiar with the code :'' To get a better understanding, you will have to examine the currently available code, find all the places that deal with savegame information and roughly understand what their specific task is about. This should be documented. You will also have to learn the text representation of savegame information which is done by WML, a markup language that is widely used within wesnoth. Play a little with the different kind of scenarios and see what savegames get out of that and what the code is doing with them.&lt;br /&gt;
* ''Design :'' Evaluating the current problems with multiplayer campaigns will be needed for this phase. After you have done this, you will have to develop a new savegame format and a design for the code that is processing it. The delivery will be at least some kind of static model (preferably UML but other techniques will do as well) and a roadmap of steps to get from the current code to the new one.&lt;br /&gt;
* ''Implementing :'' It is hard to give detailed information about the content of this phase. But basically it will be implementing the roadmap steps one by one.&lt;br /&gt;
&lt;br /&gt;
=== Proposal contents ===&lt;br /&gt;
Here are some questions and ideas to help you dive into the topic. They are meant to help you get a better idea of what this project is going to be about. They are also meant to show us, how much you made yourself familiar with wesnoth's code, as this is very important to us. We are mostly ambitious and passionate ourselves, and we seek for students that are alike. Other (wesnoth) projects provide the opportunity to present prototypes, which won't be working here. Therefore it is even more important, that you implement some patches to show us your coding skills.&amp;lt;br&amp;gt;&lt;br /&gt;
However, there is some preparation you can do by now already. You should also add your thoughts about this to the proposal you are giving us. If you get accepted, this will surve as a starting point for further fleshing out things. &lt;br /&gt;
&lt;br /&gt;
Don't hesitate to seek for help, if you have difficulties with some of the questions. I (YogiHH) will be on IRC most of the time in the evening (GMT+1) hours. You can also reach me by mail (joerg.hinrichs@alice-dsl.de) if that is not sufficient. Also keep in mind, that this is not a typical test with &amp;amp;quot;right and wrong&amp;amp;quot;. It is clear that being new you won't be able to make the &amp;amp;quot;perfect proposal&amp;amp;quot; right out of the box. We are more interested in how you approach this task, how you communicate and if you can focus on the relevant stuff without losing yourself into details. So know what you are talking about, be innovative and take initiative.&lt;br /&gt;
&lt;br /&gt;
The following two links are meant to give you further information for that:&amp;lt;br&amp;gt;&lt;br /&gt;
[[SavegameCode|savegame code]] - Contains the pieces of codes that deal with savegames and where to find them&amp;lt;br&amp;gt;&lt;br /&gt;
[[Summer of Code:SavegameWMLMapping|WML - object mapping]] - A mapping table to show you which objects hold the information of the savegame WML content&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1.&lt;br /&gt;
&amp;lt;p&amp;gt;If you take a closer look at the code, you will find, that there are different architectures of design to implement persistence. One is a more layered approach, which separates the creation and population of objects from persistent information (a savegame file, represented by a config object) from the rest. Config_adapter.cpp is an example of that idea. The other passes the raw persistence information (=config object) to the object to be created and lets it do the work. An example for this is the game_state constructor that takes a config object as argument.&amp;lt;/p&amp;gt;&lt;br /&gt;
Which are the pro's and con's of those approaches with regard to encapsulation and maintenance? What would you choose for wesnoth's savegame processing?&lt;br /&gt;
&lt;br /&gt;
2.&lt;br /&gt;
If your task is to remove config_adapter.cpp, how would you do that? Where would you put the code instead? And what are your reasons for that?&lt;br /&gt;
&lt;br /&gt;
3.&lt;br /&gt;
The &amp;lt;i&amp;gt;player_info&amp;lt;/i&amp;gt; struct and the &amp;lt;i&amp;gt;team&amp;lt;/i&amp;gt; class share some information (for example units that belong to a certain side). Do you think it is a feasible idea to mold those two into one? And what are your reasons?&lt;br /&gt;
&lt;br /&gt;
4.&lt;br /&gt;
The same question is to be asked for the &amp;lt;i&amp;gt;game_state&amp;lt;/i&amp;gt; class and the &amp;lt;i&amp;gt;gamestatus&amp;lt;/i&amp;gt; class.&lt;br /&gt;
&lt;br /&gt;
5.&lt;br /&gt;
The second link above contains a mapping table, that matches savegame WML tags to C++ objects. Identify candidates for redundancies. Warning: Keep in mind, that WML is a mighty beast! Just one example: Through WML events, a map can change throughout a scenario. Therefore it makes a lot of sense to put that map into the [snapshot] and [replay_start] tags respectively, although at first glance it looks like we could put it into some central place. After you identified candidates for redundant information, you might want to talk to one of the WML experts to make sure those information is really redundant.&lt;br /&gt;
&lt;br /&gt;
6.&lt;br /&gt;
Based on the thoughts you layed out in 1-5, what would the new savegame structure you propose be like? A level of detail like it is outlined in the mapping table will suffice here. Please also make sure, that your proposal is consistent with the idea of multiplayer campaigns.&lt;br /&gt;
&lt;br /&gt;
=== See also ===&lt;br /&gt;
[[SummerOfCodeIdeas|Summer of Code Ideas]] - The root where all information regarding SoC is (or better should be) linked from.&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:SkeletonCrew#Savegame_format|savegame contents]] - Some ideas about the current and future content of savegames.&amp;lt;br&amp;gt;&lt;br /&gt;
[[SavefileWML|Savegame WML]] - Information about the format used for storing savegame information.&lt;br /&gt;
[[Category:Summer of Code]]&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.wesnoth.org/index.php?title=Summer_of_Code:SavegameWMLMapping&amp;diff=29304</id>
		<title>Summer of Code:SavegameWMLMapping</title>
		<link rel="alternate" type="text/html" href="https://wiki.wesnoth.org/index.php?title=Summer_of_Code:SavegameWMLMapping&amp;diff=29304"/>
		<updated>2009-03-25T20:11:57Z</updated>

		<summary type="html">&lt;p&gt;Yogi Bear: New page: &amp;lt;table border=1&amp;gt; 	&amp;lt;tr&amp;gt; 		&amp;lt;td bgcolor=&amp;quot;#dcdcdc&amp;quot;&amp;gt;config tag&amp;lt;/td&amp;gt; 		&amp;lt;td bgcolor=&amp;quot;#dcdcdc&amp;quot;&amp;gt;attribute&amp;lt;/td&amp;gt; 		&amp;lt;td bgcolor=&amp;quot;#dcdcdc&amp;quot;&amp;gt;C++ object&amp;lt;/td&amp;gt; 		&amp;lt;td bgcolor=&amp;quot;#dcdcdc&amp;quot;&amp;gt;task&amp;lt;/td&amp;gt; 		&amp;lt;td bgcolo...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;table border=1&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td bgcolor=&amp;quot;#dcdcdc&amp;quot;&amp;gt;config tag&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td bgcolor=&amp;quot;#dcdcdc&amp;quot;&amp;gt;attribute&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td bgcolor=&amp;quot;#dcdcdc&amp;quot;&amp;gt;C++ object&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td bgcolor=&amp;quot;#dcdcdc&amp;quot;&amp;gt;task&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td bgcolor=&amp;quot;#dcdcdc&amp;quot;&amp;gt;multiplayer&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td bgcolor=&amp;quot;#dcdcdc&amp;quot;&amp;gt;campaign&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;root&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;label&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.label&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;name of the savefile&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;root&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;abbrev&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.abbrev&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;info, not used&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;root&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;version&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.version&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;wesnoth version&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;root&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;scenario&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.scenario&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;name of the scenario&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;root&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;completion&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.completion&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;control linger mode&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;root&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;campaign&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.campaign&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;objectives message&lt;br /&gt;
game_config ID&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;root&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;campaign_type&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.campaign_type&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;process control&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;root&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;difficulty&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.difficulty&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;process control (scenario WML)&lt;br /&gt;
cache loading&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;root&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;campaign_define&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.campaign_define&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;cache loading&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;root&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;random_seed&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.random_seed&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;initialize rng&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;root&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;random_calls&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.random_calls&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;initialize rng&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;root&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;next_underlying_unit_id&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;nunit.id_manager.instance().save_id&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;nunit support&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;root&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;end_text_duration&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.end_text_duration&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;control display of campaigns ending text&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;variables&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;various&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.variables&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;store game variables&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;player&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.players&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;store player information&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;player&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;save_id&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.players&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;map key&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;player&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;gold&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;player_info.gold&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;player&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;gold_add&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;player_info.gold_add&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;player&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;name&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;player_info.name&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;player&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;can_recruit&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;player_info.can_recruit&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;units available for recruiting&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;player.unit&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;player_info.available_units&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;recall list&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.replay_data&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay information&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;current gamestate information&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;abbrev&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.abbrev&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;info, not used&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;campaign&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.campaign&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;objectives message&lt;br /&gt;
game_config ID&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;campaign_define&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.campaign_define&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;cache loading&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;campaign_type&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.campaign_type&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;process control&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;completion&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.completion&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;control linger mode&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;current_tod&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;gamestatus.areas_&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;current time of day&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;difficulty&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.difficulty&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;process control (scenario WML)&lt;br /&gt;
cache loading&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;#textdomain&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;preprocessor&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;translation support&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;description&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;tooltips&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;minimap description&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;end_text_duration&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.end_text_duration&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;control display of campaigns ending text&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;experience_modifier&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;play_controller.xp_mod_&lt;br /&gt;
unit_type::experience_accelerator&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;experience modifier&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;hash&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;config&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;mp game verification&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;id&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;?&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;?&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;label&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.label&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;savefile name (without specification)&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;map_data&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.snapshot&lt;br /&gt;
game_state.starting_pos&lt;br /&gt;
cfg_summary&lt;br /&gt;
play_controller.map_&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;map information&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;mp***&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;play_controller.level_ (config)&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;mp game parameter&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;name&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;?&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;scenario name&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;next_scenario&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.next_scenario&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;id of the next scenario of a campaign&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;next_underlying_unit_id&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;nunit.id_manager.instance().save_id&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;nunit support&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;objectives&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.objectives&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;objective string&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;observer&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_item.observers&lt;br /&gt;
level (config)&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;allow / disallow observers&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;playing_team&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;play_controller.first_player_&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;first team to continue playing&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;random_seed&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.random_seed&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;initialize rng&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;random_calls&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.random_calls&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;initialize rng&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;random_start_time&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;level_ (config)&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;activate random start time for scenario&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;scenario&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.scenario&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;name of the scenario&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.snapshot&lt;br /&gt;
play_controller.snapshot_&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot yes / no&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;turn_at&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;gamestatus ?&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;current turn&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;turns&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;gamestatus ?&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;max number of turns&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;unit_wml_ids&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;manager (game_events)&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;used unit_type ID's&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;version&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.version&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;wesnoth version&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;level_ (config)&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;player information&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;action_bonus_count&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.action_bonus_count_&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;timer support&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;aggression&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.aggresion_&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;AI behaviour&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;allow_player&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.allow_player&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;multiplayer game setup&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;caution&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.caution_&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;AI behaviour&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;colour&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.colour&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;Team display&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;controller&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.controller&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;type of controller for this side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;countdown_time&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.countdown_time_&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;time remaining for the current / next turn&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;current_player&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.current_player&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;name of the current player (name of leader?)&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;disallow_observers&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.disallow_observers&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;prohibits observing this side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;fog&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.fog_&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;turns fog on / off&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;global_recruitment_pattern&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.global_recruitment_pattern&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;AI recruitment behaviour&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;gold&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.gold_&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;available gold&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;hidden&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.hidden&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;display control (status table)&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;id&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;?&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;?&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;income&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.income&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;gold income&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;leader_value&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.leader_value&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;AI target parameter&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;name&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.name&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team name&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;no_leader&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.no_leader&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;side has (not) a leader&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;number_of_possible_recruits_to_force_recruit&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.number_of_possible_recruits_to_force_recruit&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;AI recruitment behaviour&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;objectives&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.objectives&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team objectives&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;objectives_changed&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.objectives_changed&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;objectives changed mid scenario&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;recruit&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.can_recruit&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;unit types to recruit&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;recruitment_pattern&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.recruitment_pattern&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;AI recruitment behaviour&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;save_id&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.save_id&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;identification information&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;share_maps&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.share_maps&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;display control&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;share_view&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.share_view&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;display control&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;shroud&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.shroud_&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;turns shroud on /off&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team vector index?&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;side number (identification)&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;start_gold&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.start_gold&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;starting gold for this team / scenario&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team_name&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.team_name&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team name&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;user_team_name&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.user_team_name&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;translatable team name&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;village_gold&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.income_per_village&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;village income&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;village_value&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.village_value&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;AI rating parameter&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;villages_per_scout&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.villages_per_scout&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;AI recruitment behaviour&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side.unit&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;player_info.available_units&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;recall list&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side.ai&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.aiparams_&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;AI parameter&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.side.villages&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.villages_&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;villages owned by the team&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.time&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;gamestatus.times_&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;time cycle definition&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.music&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;sound.cpp::current_track_list&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;music playlist&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.variables&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.variables&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;variables&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.player&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.players&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;player information&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;snapshot.event&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_events, event_handler?&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;event handler definition&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;current_tod&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;gamestatus.areas_&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;current time of day&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;description&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;tooltips&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;minimap description&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;experience_modifier&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;play_controller.xp_mod_&lt;br /&gt;
unit_type::experience_accelerator&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;experience modifier&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;hash&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;config&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;mp game verification&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;id&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;?&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;?&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;map_data&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.snapshot&lt;br /&gt;
game_state.starting_pos&lt;br /&gt;
cfg_summary&lt;br /&gt;
play_controller.map_&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;map information&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;mp***&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;play_controller.level_ (config)&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;mp game parameter&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;name&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;?&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;scenario name&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;next_scenario&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.next_scenario&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;id of the next scenario of a campaign&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;next_underlying_unit_id&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;nunit.id_manager.instance().save_id&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;nunit support&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;objectives&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;team.info_.objectives&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;objective string&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;observer&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_item.observers&lt;br /&gt;
level (config)&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;allow / disallow observers&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;random_seed&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.random_seed&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;initialize rng&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;random_start_time&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;level_ (config)&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;activate random start time for scenario&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;scenario&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.scenario&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;name of the scenario&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;turns&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;gamestatus ?&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;max number of turns&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;version&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_state.version&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;wesnoth version&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start.time&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;gamestatus.times_&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;time cycle definition&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start.music&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;sound.cpp::current_track_list&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;music playlist&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start.event&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;game_events, event_handler?&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;event handler definition&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;x&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start.era&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start.story&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start.side&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;replay_start.player&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;statistics&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
	&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;/div&gt;</summary>
		<author><name>Yogi Bear</name></author>
		
	</entry>
</feed>