private boolean doAssault() {
        //Beastmaster Ascension
        if (AllZoneUtil.isCardInPlay("Beastmaster Ascension", AllZone.getComputerPlayer()) && attackers.size() > 1) {
            CardList beastions = AllZoneUtil.getCardsInZone(Constant.Zone.Battlefield, AllZone.getComputerPlayer()).
                    getName("Beastmaster Ascension");
            int minCreatures = 7;
            for (Card beastion : beastions) {
                int counters = beastion.getCounters(Counters.QUEST);
                minCreatures = Math.min(minCreatures, 7 - counters);
            }
            if (attackers.size() >= minCreatures)
                return true;
        }

        //I think this is right but the assault code may still be a little off
        CardListUtil.sortAttackLowFirst(attackers);

        int totalAttack = 0;
        //presumes the Human will block
        for (int i = 0; i < (attackers.size() - blockers.size()); i++)
            totalAttack += getAttack(attackers.get(i));

        return blockerLife <= totalAttack;
    }//doAssault()