this.expansionSetCode = "EXO";
this.color.setWhite(true);
// At the beginning of each player's upkeep, that player chooses target player who controls more lands than he or she does and is his or her opponent. The first player may search his or her library for a basic land card, put that card onto the battlefield, then shuffle his or her library.
Effect effect = new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(new FilterBasicLandCard()), false, Outcome.PutLandInPlay);
effect.setText("that player chooses target player who controls more lands than he or she does and is his or her opponent. The first player may search his or her library for a basic land card, put that card onto the battlefield, then shuffle his or her library");
Ability ability = new BeginningOfUpkeepTriggeredAbility(effect, TargetController.ANY, true);
ability.addTarget(new TargetPlayer(1, 1, false, filter));
this.addAbility(ability);
}