Merge branch 'master' of github.com:wesnoth/wesnoth-old
This commit is contained in:
commit
f56d093920
13 changed files with 53 additions and 99 deletions
|
@ -18,6 +18,10 @@ CHANGES
|
|||
Based on the feedback we have gotten, we turned gold saving off by default for the RCA AI. There is no clear overall benefit to having it turned on and it would require many scenarios to be rebalanced. There are, however, individual scenarios which definitely benefit from enabling gold saving. Help with identifying such scenarios will be much appreciated.
|
||||
[/section]
|
||||
|
||||
[section="Son of the Black Eye campaign rebalancing"]
|
||||
Rebalancing of the campaign continues and is done for scenarios 1 (“End of Peace”) through 12 (“Giving Some Back”). [b]Play-testing and feedback by others would be extremely helpful at this time.[/b] The first newly rebalanced scenario of this release is “Shan Taum the Smug”, but some earlier scenarios have seen minor changes as well.
|
||||
[/section]
|
||||
|
||||
[section="Example section header"]
|
||||
Example contents.
|
||||
[/section]
|
||||
|
|
22
changelog
22
changelog
|
@ -1,6 +1,6 @@
|
|||
Version 1.11.8+dev:
|
||||
* AI:
|
||||
* RCA (default) AI: Gold saving is turned off by default again
|
||||
* Default AI: Gold saving is turned off by default again
|
||||
* New macros AI_SAVE_GOLD and AI_SAVE_GOLD_DEFAULT for easy enabling of
|
||||
recruitment gold saving in specific scenarios
|
||||
* Wolves Micro AI: new optional parameter attack_only_prey=
|
||||
|
@ -8,6 +8,14 @@ Version 1.11.8+dev:
|
|||
* Heir to the Throne:
|
||||
* Gave Li'sar a new ability "initiative" (grants adjacent allies first
|
||||
strike in melee).
|
||||
* Son of the Black Eye:
|
||||
* Rebalancing of the campaign continues and is done for Scenarios 1 (End
|
||||
of Peace) through 12 (Giving Some Back). In addition, the following
|
||||
not directly balance related changes have also been made:
|
||||
* S3: remove AI controller right-click menu option
|
||||
* S4 & S9: make AI attack enemies 1 XP from leveling so that it is not
|
||||
possible to block key locations with such units
|
||||
* S10 & S12: don't give huge unannounced gold bonus to AIs
|
||||
* Editor:
|
||||
* Added Impassable Overlay and Unwalkable Overlay terrains to the obstacle
|
||||
group.
|
||||
|
@ -18,14 +26,17 @@ Version 1.11.8+dev:
|
|||
* Updated translations: Dutch, Portuguese, Scottish Gaelic
|
||||
* Lua API:
|
||||
* Added wesnoth.set_dialog_markup function (patch #2759).
|
||||
* Multiplayer
|
||||
* Updated map: Ruins of Terra-Dwelve.
|
||||
* Terrains:
|
||||
* Made Snowy Encampment, Snowy Orcish Castle, Snowy Encampment Keep and Snowy
|
||||
Orcish Keep aliases of both castle and frozen terrains
|
||||
* Units:
|
||||
* Decreased the strikes of the Dwarvish Lord's hatchet attack from 2 to 1.
|
||||
* Fixed subtle magenta TC for the Giant Mudcrawler sprites not being
|
||||
enabled in-game.
|
||||
* Multiplayer
|
||||
*Minor tweaks to Ruins of Terra-Dwelve
|
||||
* Unit changes and balancing:
|
||||
* Decreased the strikes of the Dwarvish Lord's hatchet attack from 2 to 1.
|
||||
* User interface:
|
||||
* Restored the old control scheme as the default
|
||||
* Fixed hidden variations of unit types (hide_help=yes) being listed in the
|
||||
help browser when they shouldn't.
|
||||
* Gray-out GUI1 scrollbar upwards scrolling button by default when starting
|
||||
|
@ -36,7 +47,6 @@ Version 1.11.8+dev:
|
|||
* Team color is now applied on the Unknown unit icon in the game Status
|
||||
Table regardless of whether the side's leader unit supports team color.
|
||||
* Miscellaneous and bug fixes:
|
||||
* Properly disabled commands in linger mode (bug #21450)
|
||||
* Added -Wno-documentation-deprecated-sync to the CMake pedantic flags.
|
||||
* Fixed several Doxygen issues found by Clang 3.4.
|
||||
* Fixed possible invalid memory access issue in the MP sides configuration
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
id=12_Giving_Some_Back
|
||||
name= _ "Giving Some Back"
|
||||
map_data="{campaigns/Son_Of_The_Black_Eye/maps/12_Giving_Some_Back.map}"
|
||||
{TURNS 28 24 20}
|
||||
turns=18
|
||||
|
||||
{SCENARIO_MUSIC "the_city_falls.ogg"}
|
||||
{EXTRA_SCENARIO_MUSIC "battle.ogg"}
|
||||
|
@ -58,7 +58,7 @@
|
|||
controller=human
|
||||
team_name=Kapoue
|
||||
user_team_name=_ "Kapou’e"
|
||||
gold=300
|
||||
gold=250
|
||||
{BLACK_FLAG}
|
||||
[/side]
|
||||
|
||||
|
@ -67,13 +67,13 @@
|
|||
[side]
|
||||
# wmllint: who ALBROCK_SIDE is Al'Brock
|
||||
{ALBROCK_SIDE}
|
||||
{GOLD 300 250 200}
|
||||
{GOLD 200 150 125}
|
||||
[/side]
|
||||
|
||||
[side]
|
||||
# wmllint: who FLARTAR_SIDE is Flar'Tar
|
||||
{FLARTAR_SIDE}
|
||||
{GOLD 300 250 200}
|
||||
{GOLD 200 150 125}
|
||||
[/side]
|
||||
|
||||
[side]
|
||||
|
@ -86,7 +86,8 @@
|
|||
recruit=Dragoon, Swordsman, Pikeman, Longbowman,Shock Trooper,Mage,Duelist,White Mage,Red Mage,Lancer,Knight
|
||||
team_name=villains
|
||||
user_team_name=_"Villains"
|
||||
{GOLD 300 350 400}
|
||||
{GOLD 400 500 600}
|
||||
{INCOME 15 25 35}
|
||||
|
||||
[ai]
|
||||
passive_leader=yes
|
||||
|
@ -94,7 +95,7 @@
|
|||
{FLAG_VARIANT loyalist}
|
||||
[/side]
|
||||
|
||||
{STARTING_VILLAGES 4 6}
|
||||
{STARTING_VILLAGES 4 12}
|
||||
|
||||
[side]
|
||||
type=Lieutenant
|
||||
|
@ -106,6 +107,7 @@
|
|||
team_name=villains
|
||||
user_team_name=_"Villains"
|
||||
{GOLD 200 250 300}
|
||||
{INCOME 7 12 17}
|
||||
|
||||
[ai]
|
||||
passive_leader=yes
|
||||
|
@ -211,24 +213,6 @@
|
|||
[/message]
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
name=die
|
||||
|
||||
[filter]
|
||||
id=Hanak
|
||||
[/filter]
|
||||
|
||||
[message]
|
||||
speaker=Arthain
|
||||
message= _ "The orcs are making headway. The city must not fall — call the reserves!"
|
||||
[/message]
|
||||
|
||||
[gold]
|
||||
side=4
|
||||
amount=400
|
||||
[/gold]
|
||||
[/event]
|
||||
|
||||
[event]
|
||||
name=enemies defeated
|
||||
|
||||
|
|
|
@ -15,12 +15,12 @@
|
|||
|
||||
[hotkey]
|
||||
button=1
|
||||
command="selecthex"
|
||||
command="selectmoveaction"
|
||||
mouse=0
|
||||
[/hotkey]
|
||||
[hotkey]
|
||||
button=3
|
||||
command="moveaction"
|
||||
command="deselecthex"
|
||||
mouse=0
|
||||
[/hotkey]
|
||||
|
||||
|
|
|
@ -1546,7 +1546,7 @@ Merfolk and nagas have 60% defense in submerged villages, whereas land based uni
|
|||
name= _ "Encampment"
|
||||
editor_name= _ "Snowy Encampment"
|
||||
string=Cea
|
||||
aliasof=Ct
|
||||
aliasof=Ct, At
|
||||
unit_height_adjust=3
|
||||
recruit_onto=true
|
||||
editor_group=castle, frozen
|
||||
|
@ -1570,7 +1570,7 @@ Merfolk and nagas have 60% defense in submerged villages, whereas land based uni
|
|||
name= _ "Castle"
|
||||
editor_name= _ "Snowy Orcish Castle"
|
||||
string=Coa
|
||||
aliasof=Ct
|
||||
aliasof=Ct, At
|
||||
unit_height_adjust=3
|
||||
recruit_onto=true
|
||||
editor_group=castle, frozen
|
||||
|
@ -1603,7 +1603,7 @@ Merfolk and nagas have 60% defense in submerged villages, whereas land based uni
|
|||
symbol_image=castle/elven/tile
|
||||
id=elven_castle
|
||||
name= _ "Castle"
|
||||
editor_name= _ "Elvish Castle"
|
||||
editor_name= _ "Elven Castle"
|
||||
string=Cv
|
||||
aliasof=Ct
|
||||
unit_height_adjust=3
|
||||
|
@ -1720,7 +1720,7 @@ Merfolk and nagas have 60% defense in submerged villages, whereas land based uni
|
|||
name= _ "Encampment Keep"
|
||||
editor_name= _ "Snowy Encampment Keep"
|
||||
string=Kea
|
||||
aliasof=Ct
|
||||
aliasof=Ct, At
|
||||
unit_height_adjust=0
|
||||
recruit_from=true
|
||||
recruit_onto=true
|
||||
|
@ -1746,7 +1746,7 @@ Merfolk and nagas have 60% defense in submerged villages, whereas land based uni
|
|||
name= _ "Keep"
|
||||
editor_name= _ "Snowy Orcish Keep"
|
||||
string=Koa
|
||||
aliasof=Ct
|
||||
aliasof=Ct, At
|
||||
unit_height_adjust=17
|
||||
recruit_from=true
|
||||
recruit_onto=true
|
||||
|
|
|
@ -1639,14 +1639,14 @@ def global_sanity_check(filename, lines):
|
|||
present.append(value)
|
||||
elif value and value[0] in ("$", "{"):
|
||||
continue
|
||||
elif preamble_seen and subtag_depth > 0 and not ignore_id and not in_object and not in_cfg and not in_facet and not in_sound_source and not in_remove_sound_source and not in_stage and not in_goal and not in_set_menu_item and not directly_in_event[-1] and not in_time_area:
|
||||
elif preamble_seen and subtag_depth > 0 and not ignore_id and not in_object and not in_cfg and not in_facet and not in_sound_source and not in_remove_sound_source and not in_stage and not in_goal and not in_set_menu_item and not in_clear_menu_item and not directly_in_event[-1] and not in_time_area:
|
||||
ids = value.split(",")
|
||||
for j in xrange(len(ids)):
|
||||
# removal of leading whitespace of items in comma-separated lists
|
||||
# is usually supported in the mainline wesnoth lua scripts
|
||||
# not sure about trailing one
|
||||
# also, do not complain about ids if they're referred to a menu item being cleared
|
||||
if ids[j].lstrip() not in present and not in_clear_menu_item:
|
||||
if ids[j].lstrip() not in present:
|
||||
print '"%s", line %d: unknown \'%s\' referred to by id' \
|
||||
% (filename, i+1, ids[j])
|
||||
if (in_scenario or in_multiplayer) and key == "speaker":
|
||||
|
|
|
@ -4,21 +4,26 @@ changelog: https://github.com/wesnoth/wesnoth-old/blob/master/changelog
|
|||
|
||||
Version 1.11.8+dev:
|
||||
* AI:
|
||||
* RCA (default) AI: Gold saving is turned off by default again
|
||||
* Default AI: Gold saving is turned off by default again.
|
||||
|
||||
* Campaigns:
|
||||
* Heir to the Throne:
|
||||
* Gave Li'sar a new ability "initiative" (grants adjacent allies first
|
||||
strike in melee).
|
||||
* Son of the Black Eye:
|
||||
* Rebalancing of the campaign continues and is done for Scenarios 1 (End
|
||||
of Peace) through 8 (Giving Some Back).
|
||||
|
||||
* Language and i18n:
|
||||
* Updated translations: Dutch, Portuguese, Scottish Gaelic.
|
||||
|
||||
* Unit changes and balancing:
|
||||
* Units:
|
||||
* Decreased the strikes of the Dwarvish Lord's hatchet attack from 2 to 1.
|
||||
* Fixed subtle magenta TC for the Giant Mudcrawler sprites not being
|
||||
enabled in-game.
|
||||
|
||||
|
||||
* User interface:
|
||||
* Restored the old controll scheme as the default
|
||||
* Fixed hidden variations of unit types (hide_help=yes) being listed in the
|
||||
help browser when they shouldn't.
|
||||
* Truncate long Advanced Preferences entries with ellipses to avoid
|
||||
|
@ -27,7 +32,6 @@ Version 1.11.8+dev:
|
|||
Table regardless of whether the side's leader unit supports team color.
|
||||
|
||||
* Miscellaneous and bug fixes:
|
||||
* Properly disabled commands in linger mode (bug #21450)
|
||||
* Fixed possible invalid memory access issue in the MP sides configuration
|
||||
code causing crashes for some users (bug #21449).
|
||||
* Fixed broken image references in the Gameplay -> Time of Day help topic.
|
||||
|
|
|
@ -191,7 +191,6 @@ namespace {
|
|||
* If a script is defined but can't be executed it will return false
|
||||
*/
|
||||
void fire(const std::string& hook, const std::string& addon);
|
||||
void convert_binary_to_gzip();
|
||||
int load_config(); // return the server port
|
||||
const config &campaigns() const { return cfg_.child("campaigns"); }
|
||||
config &campaigns() { return cfg_.child("campaigns"); }
|
||||
|
@ -335,58 +334,9 @@ namespace {
|
|||
copying["contents"] = contents;
|
||||
|
||||
}
|
||||
/// @todo Check if this function has any purpose left
|
||||
void campaign_server::convert_binary_to_gzip()
|
||||
{
|
||||
if (!cfg_["encoded"].to_bool())
|
||||
{
|
||||
// Convert all addons to gzip
|
||||
config::const_child_itors camps = campaigns().child_range("campaign");
|
||||
LOG_CS << "Encoding all stored addons. Number of addons: "
|
||||
<< std::distance(camps.first, camps.second) << '\n';
|
||||
|
||||
BOOST_FOREACH(const config &cm, camps)
|
||||
{
|
||||
LOG_CS << "Encoding " << cm["name"] << '\n';
|
||||
std::string filename = cm["filename"], newfilename = filename + ".new";
|
||||
|
||||
{
|
||||
scoped_istream in_file = istream_file(filename);
|
||||
boost::iostreams::filtering_stream<boost::iostreams::input> in_filter;
|
||||
in_filter.push(boost::iostreams::gzip_decompressor());
|
||||
in_filter.push(*in_file);
|
||||
|
||||
scoped_ostream out_file = ostream_file(newfilename);
|
||||
boost::iostreams::filtering_stream<boost::iostreams::output> out_filter;
|
||||
out_filter.push(boost::iostreams::gzip_compressor(boost::iostreams::gzip_params(compress_level_)));
|
||||
out_filter.push(*out_file);
|
||||
|
||||
unsigned char c = in_filter.get();
|
||||
while( in_filter.good())
|
||||
{
|
||||
if (needs_escaping(c) && c != '\x01')
|
||||
{
|
||||
out_filter.put('\x01');
|
||||
out_filter.put(c+1);
|
||||
} else {
|
||||
out_filter.put(c);
|
||||
}
|
||||
c = in_filter.get();
|
||||
}
|
||||
}
|
||||
|
||||
std::remove(filename.c_str());
|
||||
std::rename(newfilename.c_str(), filename.c_str());
|
||||
}
|
||||
|
||||
cfg_["encoded"] = true;
|
||||
}
|
||||
}
|
||||
|
||||
void campaign_server::run()
|
||||
{
|
||||
convert_binary_to_gzip();
|
||||
|
||||
if (!cfg_["control_socket"].empty())
|
||||
input_ = new input_stream(cfg_["control_socket"]);
|
||||
|
||||
|
|
|
@ -890,13 +890,11 @@ bool editor_controller::execute_command(const hotkey::hotkey_command& cmd, int i
|
|||
context_manager_->get_map_context().new_side();
|
||||
gui_->init_flags();
|
||||
return true;
|
||||
|
||||
case HOTKEY_EDITOR_SIDE_REMOVE:
|
||||
gui_->set_team(0, true);
|
||||
gui_->set_playing_team(0);
|
||||
context_manager_->get_map_context().remove_side();
|
||||
return true;
|
||||
|
||||
case HOTKEY_EDITOR_SIDE_EDIT:
|
||||
context_manager_->edit_side_dialog(gui_->viewing_team());
|
||||
return true;
|
||||
|
|
|
@ -214,7 +214,7 @@ void show_hotkeys_preferences_dialog(display& disp) {
|
|||
// tab names and icons
|
||||
items.push_back(pre + "general.png" + sep
|
||||
+ sgettext("Prefs section^General"));
|
||||
items.push_back(pre + "title_screen.png" + sep
|
||||
items.push_back(pre + "titlescreen.png" + sep
|
||||
+ sgettext("Prefs section^Title Screen"));
|
||||
items.push_back(pre + "game.png" + sep
|
||||
+ sgettext("Prefs section^Game"));
|
||||
|
|
|
@ -1923,7 +1923,7 @@ class console_handler : public map_command_handler<console_handler>, private cha
|
|||
using chmap::get_commands_list;
|
||||
|
||||
protected:
|
||||
//chat_command_handler's init_map() and hanlers will end up calling these.
|
||||
//chat_command_handler's init_map() and handlers will end up calling these.
|
||||
//this makes sure the commands end up in our map
|
||||
virtual void register_command(const std::string& cmd,
|
||||
chat_command_handler::command_handler h, const std::string& help="",
|
||||
|
|
|
@ -275,7 +275,9 @@ void playmp_controller::reset_end_scenario_button()
|
|||
void playmp_controller::linger()
|
||||
{
|
||||
LOG_NG << "beginning end-of-scenario linger\n";
|
||||
const events::command_disabler disable_commands;
|
||||
// TODO this seemed the right way to handle bug #21450
|
||||
// but it is causing to end scenario button to be disabled
|
||||
//const events::command_disabler disable_commands;
|
||||
browse_ = true;
|
||||
linger_ = true;
|
||||
// If we need to set the status depending on the completion state
|
||||
|
|
|
@ -752,7 +752,9 @@ struct set_completion
|
|||
void playsingle_controller::linger()
|
||||
{
|
||||
LOG_NG << "beginning end-of-scenario linger\n";
|
||||
const events::command_disabler disable_commands;
|
||||
// TODO this seemed the right way to handle bug #21450
|
||||
// but it is causing to end scenario button to be disabled
|
||||
//const events::command_disabler disable_commands;
|
||||
browse_ = true;
|
||||
linger_ = true;
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue