Skirmish ends only when ALL the enemy units are destroyed

Asked by yfm on 2012-07-11

That's really lame. Is there any fix for it?
And also — while playing on a large map, for example for 8 players and placing there less than 7 enemies their bases are always placed in the nearest possible place, while as I guess they should be placed as far as possible or randomly. is there any fix?

Question information

Language:
English Edit question
Status:
Solved
For:
Wargus Edit question
Assignee:
No assignee Edit question
Solved by:
yfm
Solved:
2012-07-11
Last query:
2012-07-11
Last reply:
Joris Dauphin (joris-dauphin) said : #1

Skirmish ends only when ALL the enemy units are destroyed.
It is by design.

You can replace function SinglePlayerTriggers() in scripts/stratagus.lua by something like
-- 8< --
function SinglePlayerTriggers()
  AddTrigger(
    function() return GetPlayerData(GetThisPlayer(), "NumBuildings") == 0 end,
    function() return ActionDefeat() end)

  AddTrigger(
    function()
      for i=0,PlayerMax-1 do
        if (Players[i]:IsEnemy(ThisPlayer) and
            GetPlayerData(Players[i].Index, "NumBuildings") ~= 0) then
          return false
        end
      end
      return true
    end,
    function() return ActionVictory() end)
end
-- >8 --

which is like starcraft, no building
(but since wargus game start without building, it should be something more complicated...)

yfm (you-fail-me) said : #2

Really, it may don't work(
That design is kinda weird — hunting for some one last shitty flying machine or submarine when all the war is won really pisses me off(

Joris Dauphin (joris-dauphin) said : #3

old design... like original warcraft 2.
with starcraft, it is better, but there is still some problem (which lead to a draw in sc2).

yfm (you-fail-me) said : #4

I may be mistaking, but as far as i can remember original warcraft 2 skirmish ended when all the unit-productive buildings (like barracks, town halls etc) were destroyed, but not when EVERYTHING is destroyed

yfm (you-fail-me) said : #5

crap, i've occasionally pressed "solve" button(( it ain't solved anyways!) sorry(