diff --git a/Mage.Server.Plugins/Mage.Game.CommanderDuel/src/mage/game/CommanderDuel.java b/Mage.Server.Plugins/Mage.Game.CommanderDuel/src/mage/game/CommanderDuel.java
index 7eaf10bc32..a0d7fee1c8 100644
--- a/Mage.Server.Plugins/Mage.Game.CommanderDuel/src/mage/game/CommanderDuel.java
+++ b/Mage.Server.Plugins/Mage.Game.CommanderDuel/src/mage/game/CommanderDuel.java
@@ -171,6 +171,7 @@ public class CommanderDuel extends GameImpl<CommanderDuel> {
         if(player != null && mulliganedCards.containsKey(playerId)){
             for(Card card : mulliganedCards.get(playerId).getCards(this)){
                 if(card != null){
+                    card.setFaceDown(false);
                     card.moveToZone(Zone.LIBRARY, null, this, false);
                 }
             }
diff --git a/Mage/src/mage/cards/CardImpl.java b/Mage/src/mage/cards/CardImpl.java
index 46c74aa0d3..9ce5329783 100644
--- a/Mage/src/mage/cards/CardImpl.java
+++ b/Mage/src/mage/cards/CardImpl.java
@@ -468,6 +468,9 @@ public abstract class CardImpl<T extends CardImpl<T>> extends MageObjectImpl<T>
                         game.getExile().removeCard(this, game);
                         removed = true;
                         break;
+                    case COMMAND:
+                        removed = true;
+                        break;
                     case PICK:
                         removed = true;
                         break;
diff --git a/Mage/src/mage/game/command/Commander.java b/Mage/src/mage/game/command/Commander.java
index cc12e56ee8..23aa9a24aa 100644
--- a/Mage/src/mage/game/command/Commander.java
+++ b/Mage/src/mage/game/command/Commander.java
@@ -34,11 +34,13 @@ import mage.ObjectColor;
 import mage.abilities.Abilities;
 import mage.abilities.AbilitiesImpl;
 import mage.abilities.Ability;
+import mage.abilities.ActivatedAbility;
 import mage.abilities.common.CastCommanderAbility;
 import mage.abilities.costs.mana.ManaCost;
 import mage.abilities.costs.mana.ManaCosts;
 import mage.cards.Card;
 import mage.constants.CardType;
+import mage.constants.Zone;
 import mage.game.Game;
 
 /**
@@ -49,13 +51,20 @@ import mage.game.Game;
 
 public class Commander implements CommandObject{
 
-    private Card card;
-    private Abilities<Ability> abilites = new AbilitiesImpl<Ability>();
+    private final Card card;
+    private final Abilities<Ability> abilites = new AbilitiesImpl<Ability>();
 
     
     public Commander(Card card){
         this.card = card;
         abilites.add(new CastCommanderAbility(card));
+        for (Ability ability : card.getAbilities()) {
+            if (ability instanceof ActivatedAbility && ability.getZone().equals(Zone.COMMAND)) {
+                Ability newAbility = ability.copy();
+                newAbility.setRuleVisible(false);
+                abilites.add(newAbility);
+            }
+        }
     }
     
     private Commander(Commander copy) {