[Commits] [wesnoth/wesnoth] d625d4: Update check_victory

GitHub noreply at github.com
Sun Jul 26 18:46:55 UTC 2015


  Branch: refs/heads/1.12
  Home:   https://github.com/wesnoth/wesnoth
  Commit: d625d49d37969eb30ebe960c30a5d51b2ca1127e
      https://github.com/wesnoth/wesnoth/commit/d625d49d37969eb30ebe960c30a5d51b2ca1127e
  Author: gfgtdf <tischpapier at gmail.com>
  Date:   2015-07-26 (Sun, 26 Jul 2015)

  Changed paths:
    M src/play_controller.cpp

  Log Message:
  -----------
  Update check_victory

Backports https://github.com/wesnoth/wesnoth/commit/d808b7c7874465e314c433029d709236bea4fab9


Now the game ends on all client at the same time even with victory_when_enemies_defeated_= no.

previously in mp the attribute victory_when_enemies_defeated only prevents victory for human sides but doesn't prevent defeats. This means in a simple 1vs1 Mp game with victory_when_enemies_defeated=no when side 1 gets defeated, Player 1 will get the "You have been defeated" message and for client 2 the game continues. I tested with adding victory_when_enemies_defeated =no in 2p_Arcanclave_Citadel.cfg.
When side 1 looses (leader killed) (during side 2' turn) the following happens:
[list=1]
[*]side 1 gets a "you get defeated", side 2 continues
[*]when side 1 checks "end scenario" side 2 gets a "side 1 has left the game... reassign controll to ai/human/idle/..."
[*]I clicked "controll by human" on client 2
[*]I ended side 2's turn and continued playing side 1 on client 2 and didnt get defeated
[/list]
I am sure that this is not the intended behaviour.

this commits also effects when "enemies defeated" is fired accodignly so it is fired on all clients at the same time like any synced event (previously using this event could casue OOS).





More information about the Commits mailing list