diff --git a/forge-core/src/main/java/forge/card/CardDb.java b/forge-core/src/main/java/forge/card/CardDb.java index c76af52b563..d9af48428a1 100644 --- a/forge-core/src/main/java/forge/card/CardDb.java +++ b/forge-core/src/main/java/forge/card/CardDb.java @@ -672,13 +672,29 @@ private PaperCard tryGetCard(CardRequest request) { CardEdition edition = editions.get(reqEditionCode.toUpperCase()); PaperCard cardFromSet = this.getCardFromSet(request.cardName, edition, request.artIndex, request.collectorNumber, request.isFoil); - if(cardFromSet != null && request.flags != null) + if (cardFromSet != null && request.flags != null) { cardFromSet = cardFromSet.copyWithFlags(request.flags); + } - if (cardFromSet != null) + if (cardFromSet != null) { return cardFromSet; + } + + if (request.artIndex > 0 + || (request.collectorNumber != null && !request.collectorNumber.isEmpty() && !request.collectorNumber.equals(IPaperCard.NO_COLLECTOR_NUMBER))) { + // If request failed, try again without artIndex and collectorNumber to attempt to find from same set first + cardFromSet = this.getCardFromSet(request.cardName, edition, -1, IPaperCard.NO_COLLECTOR_NUMBER, request.isFoil); + if(cardFromSet != null && request.flags != null) + cardFromSet = cardFromSet.copyWithFlags(request.flags); + + if (cardFromSet != null) { + return cardFromSet; + } + } + } + // 2. Card lookup in edition with specified filter didn't work. // So now check whether the cards exist in the DB first, // and select pick the card based on current SetPreference policy as a fallback diff --git a/forge-gui/res/adventure/Realm of Legends/decks/starter/commanderprecon/40K - The Ruinous Powers.dck b/forge-gui/res/adventure/Realm of Legends/decks/starter/commanderprecon/40K - The Ruinous Powers.dck index 023022895a1..e94557e3734 100644 --- a/forge-gui/res/adventure/Realm of Legends/decks/starter/commanderprecon/40K - The Ruinous Powers.dck +++ b/forge-gui/res/adventure/Realm of Legends/decks/starter/commanderprecon/40K - The Ruinous Powers.dck @@ -51,7 +51,7 @@ Set=40K 1 Mandate of Abaddon|40K|1 1 Molten Slagheap|40K|1 1 Mortarion, Daemon Primarch|40K|1 -8 Mountain|40K|3 +8 Mountain|40K|2 1 Mutalith Vortex Beast|40K|1 1 Noise Marine|40K|1 1 Nurgle's Conscription|40K|1 diff --git a/forge-gui/res/quest/commanderprecons/The Ruinous Powers [40K] [2022].dck b/forge-gui/res/quest/commanderprecons/The Ruinous Powers [40K] [2022].dck index 023022895a1..e94557e3734 100644 --- a/forge-gui/res/quest/commanderprecons/The Ruinous Powers [40K] [2022].dck +++ b/forge-gui/res/quest/commanderprecons/The Ruinous Powers [40K] [2022].dck @@ -51,7 +51,7 @@ Set=40K 1 Mandate of Abaddon|40K|1 1 Molten Slagheap|40K|1 1 Mortarion, Daemon Primarch|40K|1 -8 Mountain|40K|3 +8 Mountain|40K|2 1 Mutalith Vortex Beast|40K|1 1 Noise Marine|40K|1 1 Nurgle's Conscription|40K|1