mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-19 12:18:00 +00:00
Merge branch 'historicLDA' into 'master'
Historic Archetype Random Deck Generation See merge request core-developers/forge!4488
This commit is contained in:
@@ -484,6 +484,10 @@ public class GameFormat implements Comparable<GameFormat> {
|
||||
return this.map.get("Pioneer");
|
||||
}
|
||||
|
||||
public GameFormat getHistoric() {
|
||||
return this.map.get("Historic");
|
||||
}
|
||||
|
||||
public GameFormat getModern() {
|
||||
return this.map.get("Modern");
|
||||
}
|
||||
|
||||
@@ -613,6 +613,11 @@ public class FDeckChooser extends JPanel implements IDecksComboBoxListener {
|
||||
updateMatrix(FModel.getFormats().getPioneer());
|
||||
}
|
||||
break;
|
||||
case HISTORIC_CARDGEN_DECK:
|
||||
if(FModel.isdeckGenMatrixLoaded()) {
|
||||
updateMatrix(FModel.getFormats().getHistoric());
|
||||
}
|
||||
break;
|
||||
case MODERN_CARDGEN_DECK:
|
||||
if(FModel.isdeckGenMatrixLoaded()) {
|
||||
updateMatrix(FModel.getFormats().getModern());
|
||||
|
||||
@@ -246,6 +246,7 @@ public class VLobby implements ILobbyView {
|
||||
switch (selectedDeckType){
|
||||
case STANDARD_CARDGEN_DECK:
|
||||
case PIONEER_CARDGEN_DECK:
|
||||
case HISTORIC_CARDGEN_DECK:
|
||||
case MODERN_CARDGEN_DECK:
|
||||
case LEGACY_CARDGEN_DECK:
|
||||
case VINTAGE_CARDGEN_DECK:
|
||||
|
||||
@@ -73,6 +73,7 @@ public enum CSubmenuGauntletQuick implements ICDoc {
|
||||
if (view.getBoxStandardColorDecks().isSelected()) { allowedDeckTypes.add(DeckType.STANDARD_COLOR_DECK); }
|
||||
if (view.getBoxStandardGenDecks().isSelected()) { allowedDeckTypes.add(DeckType.STANDARD_CARDGEN_DECK); }
|
||||
if (view.getBoxPioneerGenDecks().isSelected()) { allowedDeckTypes.add(DeckType.PIONEER_CARDGEN_DECK); }
|
||||
if (view.getBoxHistoricGenDecks().isSelected()) { allowedDeckTypes.add(DeckType.HISTORIC_CARDGEN_DECK); }
|
||||
if (view.getBoxModernGenDecks().isSelected()) { allowedDeckTypes.add(DeckType.MODERN_CARDGEN_DECK); }
|
||||
if (view.getBoxLegacyGenDecks().isSelected()) { allowedDeckTypes.add(DeckType.LEGACY_CARDGEN_DECK); }
|
||||
if (view.getBoxVintageGenDecks().isSelected()) { allowedDeckTypes.add(DeckType.VINTAGE_CARDGEN_DECK); }
|
||||
|
||||
@@ -60,6 +60,7 @@ public enum VSubmenuGauntletQuick implements IVSubmenu<CSubmenuGauntletQuick> {
|
||||
private final JCheckBox boxStandardColorDecks = new FCheckBox(DeckType.STANDARD_COLOR_DECK.toString());
|
||||
private final JCheckBox boxStandardCardgenDecks = new FCheckBox(DeckType.STANDARD_CARDGEN_DECK.toString());
|
||||
private final JCheckBox boxPioneerCardgenDecks = new FCheckBox(DeckType.PIONEER_CARDGEN_DECK.toString());
|
||||
private final JCheckBox boxHistoricCardgenDecks = new FCheckBox(DeckType.HISTORIC_CARDGEN_DECK.toString());
|
||||
private final JCheckBox boxModernCardgenDecks = new FCheckBox(DeckType.MODERN_CARDGEN_DECK.toString());
|
||||
private final JCheckBox boxLegacyCardgenDecks = new FCheckBox(DeckType.LEGACY_CARDGEN_DECK.toString());
|
||||
private final JCheckBox boxVintageCardgenDecks = new FCheckBox(DeckType.VINTAGE_CARDGEN_DECK.toString());
|
||||
@@ -231,6 +232,9 @@ public enum VSubmenuGauntletQuick implements IVSubmenu<CSubmenuGauntletQuick> {
|
||||
public JCheckBox getBoxPioneerGenDecks() {
|
||||
return boxPioneerCardgenDecks;
|
||||
}
|
||||
public JCheckBox getBoxHistoricGenDecks() {
|
||||
return boxHistoricCardgenDecks;
|
||||
}
|
||||
public JCheckBox getBoxLegacyGenDecks() {
|
||||
return boxLegacyCardgenDecks;
|
||||
}
|
||||
|
||||
@@ -156,7 +156,7 @@ public class FDeckChooser extends FScreen {
|
||||
@Override
|
||||
public void handleEvent(FEvent e) {
|
||||
if (selectedDeckType != DeckType.STANDARD_COLOR_DECK && selectedDeckType != DeckType.STANDARD_CARDGEN_DECK
|
||||
&& selectedDeckType != DeckType.PIONEER_CARDGEN_DECK
|
||||
&& selectedDeckType != DeckType.PIONEER_CARDGEN_DECK && selectedDeckType != DeckType.HISTORIC_CARDGEN_DECK
|
||||
&& selectedDeckType != DeckType.MODERN_CARDGEN_DECK && selectedDeckType != DeckType.LEGACY_CARDGEN_DECK
|
||||
&& selectedDeckType != DeckType.VINTAGE_CARDGEN_DECK && selectedDeckType != DeckType.MODERN_COLOR_DECK &&
|
||||
selectedDeckType != DeckType.COLOR_DECK && selectedDeckType != DeckType.THEME_DECK
|
||||
@@ -183,6 +183,9 @@ public class FDeckChooser extends FScreen {
|
||||
else if (selectedDeckType == DeckType.PIONEER_CARDGEN_DECK){
|
||||
DeckgenUtil.randomSelect(lstDecks);
|
||||
}
|
||||
else if (selectedDeckType == DeckType.HISTORIC_CARDGEN_DECK){
|
||||
DeckgenUtil.randomSelect(lstDecks);
|
||||
}
|
||||
else if (selectedDeckType == DeckType.MODERN_CARDGEN_DECK){
|
||||
DeckgenUtil.randomSelect(lstDecks);
|
||||
}
|
||||
@@ -320,6 +323,7 @@ public class FDeckChooser extends FScreen {
|
||||
case RANDOM_COMMANDER_DECK:
|
||||
case MODERN_CARDGEN_DECK:
|
||||
case PIONEER_CARDGEN_DECK:
|
||||
case HISTORIC_CARDGEN_DECK:
|
||||
case LEGACY_CARDGEN_DECK:
|
||||
case VINTAGE_CARDGEN_DECK:
|
||||
case MODERN_COLOR_DECK:
|
||||
@@ -526,6 +530,7 @@ public class FDeckChooser extends FScreen {
|
||||
if(FModel.isdeckGenMatrixLoaded()) {
|
||||
cmbDeckTypes.addItem(DeckType.STANDARD_CARDGEN_DECK);
|
||||
cmbDeckTypes.addItem(DeckType.PIONEER_CARDGEN_DECK);
|
||||
cmbDeckTypes.addItem(DeckType.HISTORIC_CARDGEN_DECK);
|
||||
cmbDeckTypes.addItem(DeckType.MODERN_CARDGEN_DECK);
|
||||
cmbDeckTypes.addItem(DeckType.LEGACY_CARDGEN_DECK);
|
||||
cmbDeckTypes.addItem(DeckType.VINTAGE_CARDGEN_DECK);
|
||||
@@ -931,6 +936,14 @@ public class FDeckChooser extends FScreen {
|
||||
}
|
||||
config = ItemManagerConfig.STRING_ONLY;
|
||||
break;
|
||||
case HISTORIC_CARDGEN_DECK:
|
||||
maxSelections = 1;
|
||||
pool= new ArrayList<>();
|
||||
if(FModel.isdeckGenMatrixLoaded()) {
|
||||
pool = ArchetypeDeckGenerator.getMatrixDecks(FModel.getFormats().getHistoric(), isAi);
|
||||
}
|
||||
config = ItemManagerConfig.STRING_ONLY;
|
||||
break;
|
||||
case MODERN_CARDGEN_DECK:
|
||||
maxSelections = 1;
|
||||
pool= new ArrayList<>();
|
||||
@@ -1377,6 +1390,7 @@ public class FDeckChooser extends FScreen {
|
||||
DeckType.STANDARD_CARDGEN_DECK,
|
||||
DeckType.MODERN_COLOR_DECK,
|
||||
DeckType.PIONEER_CARDGEN_DECK,
|
||||
DeckType.HISTORIC_CARDGEN_DECK,
|
||||
DeckType.MODERN_CARDGEN_DECK,
|
||||
DeckType.LEGACY_CARDGEN_DECK,
|
||||
DeckType.VINTAGE_CARDGEN_DECK,
|
||||
@@ -1392,6 +1406,7 @@ public class FDeckChooser extends FScreen {
|
||||
if (!FModel.isdeckGenMatrixLoaded()) {
|
||||
deckTypes.remove(DeckType.STANDARD_CARDGEN_DECK);
|
||||
deckTypes.remove(DeckType.PIONEER_CARDGEN_DECK);
|
||||
deckTypes.remove(DeckType.HISTORIC_CARDGEN_DECK);
|
||||
deckTypes.remove(DeckType.MODERN_CARDGEN_DECK);
|
||||
deckTypes.remove(DeckType.LEGACY_CARDGEN_DECK);
|
||||
deckTypes.remove(DeckType.VINTAGE_CARDGEN_DECK);
|
||||
|
||||
@@ -500,6 +500,7 @@ public abstract class LobbyScreen extends LaunchScreen implements ILobbyView {
|
||||
switch (selectedDeckType){
|
||||
case STANDARD_CARDGEN_DECK:
|
||||
case PIONEER_CARDGEN_DECK:
|
||||
case HISTORIC_CARDGEN_DECK:
|
||||
case MODERN_CARDGEN_DECK:
|
||||
case LEGACY_CARDGEN_DECK:
|
||||
case VINTAGE_CARDGEN_DECK:
|
||||
|
||||
@@ -89,6 +89,7 @@ public class NewGauntletScreen extends LaunchScreen {
|
||||
DeckType.STANDARD_CARDGEN_DECK,
|
||||
DeckType.MODERN_COLOR_DECK,
|
||||
DeckType.PIONEER_CARDGEN_DECK,
|
||||
DeckType.HISTORIC_CARDGEN_DECK,
|
||||
DeckType.MODERN_CARDGEN_DECK,
|
||||
DeckType.LEGACY_CARDGEN_DECK,
|
||||
DeckType.VINTAGE_CARDGEN_DECK,
|
||||
|
||||
BIN
forge-gui/res/deckgendecks/Historic.lda.dat
Normal file
BIN
forge-gui/res/deckgendecks/Historic.lda.dat
Normal file
Binary file not shown.
BIN
forge-gui/res/deckgendecks/Historic.raw.dat
Normal file
BIN
forge-gui/res/deckgendecks/Historic.raw.dat
Normal file
Binary file not shown.
@@ -4,5 +4,5 @@ Type:Digital
|
||||
Subtype:Arena
|
||||
Effective:2019-11-21
|
||||
Order:142
|
||||
Sets:XLN, RIX, DOM, M19, GRN, G18, RNA, WAR, M20, ELD, HA1, THB, HA2, IKO, HA3, M21, JMP, AKR, ZNR, KLR, KHM, STX, STA
|
||||
Sets:XLN, RIX, DOM, M19, GRN, G18, RNA, WAR, M20, ELD, HA1, THB, HA2, IKO, HA3, M21, JMP, AKR, ZNR, KLR, KHM, HA4, STX, STA
|
||||
Banned:Agent of Treachery; Channel; Counterspell; Dark Ritual; Demonic Tutor; Field of the Dead; Fires of Invention; Lightning Bolt; Oko, Thief of Crowns; Omnath, Locus of Creation; Natural Order; Nexus of Fate; Once Upon a Time; Swords to Plowshares; Teferi, Time Raveler; Veil of Summer; Uro, Titan of Nature's Wrath; Wilderness Reclamation; Winota, Joiner of Forces
|
||||
@@ -580,6 +580,7 @@ lblQuestOpponentDecks=Quest Opponent Decks
|
||||
lblRandomColorDecks=Random Color Decks
|
||||
lblRandomStandardArchetypeDecks=Random Standard Archetype Decks
|
||||
lblRandomPioneerArchetypeDecks=Random Pioneer Archetype Decks
|
||||
lblRandomHistoricArchetypeDecks=Random Historic Archetype Decks
|
||||
lblRandomModernArchetypeDecks=Random Modern Archetype Decks
|
||||
lblRandomLegacyArchetypeDecks=Random Legacy Archetype Decks
|
||||
lblRandomVintageArchetypeDecks=Random Vintage Archetype Decks
|
||||
|
||||
@@ -27,6 +27,7 @@ public final class CardArchetypeLDAGenerator {
|
||||
List<String> formatStrings = new ArrayList<>();
|
||||
formatStrings.add(FModel.getFormats().getStandard().getName());
|
||||
formatStrings.add(FModel.getFormats().getPioneer().getName());
|
||||
formatStrings.add(FModel.getFormats().getHistoric().getName());
|
||||
formatStrings.add(FModel.getFormats().getModern().getName());
|
||||
formatStrings.add("Legacy");
|
||||
formatStrings.add("Vintage");
|
||||
|
||||
@@ -22,6 +22,7 @@ public enum DeckType {
|
||||
COLOR_DECK("lblRandomColorDecks"),
|
||||
STANDARD_CARDGEN_DECK("lblRandomStandardArchetypeDecks"),
|
||||
PIONEER_CARDGEN_DECK("lblRandomPioneerArchetypeDecks"),
|
||||
HISTORIC_CARDGEN_DECK("lblRandomHistoricArchetypeDecks"),
|
||||
MODERN_CARDGEN_DECK("lblRandomModernArchetypeDecks"),
|
||||
LEGACY_CARDGEN_DECK("lblRandomLegacyArchetypeDecks"),
|
||||
VINTAGE_CARDGEN_DECK("lblRandomVintageArchetypeDecks"),
|
||||
@@ -50,6 +51,7 @@ public enum DeckType {
|
||||
DeckType.COLOR_DECK,
|
||||
DeckType.STANDARD_CARDGEN_DECK,
|
||||
DeckType.PIONEER_CARDGEN_DECK,
|
||||
DeckType.HISTORIC_CARDGEN_DECK,
|
||||
DeckType.MODERN_CARDGEN_DECK,
|
||||
DeckType.LEGACY_CARDGEN_DECK,
|
||||
DeckType.VINTAGE_CARDGEN_DECK,
|
||||
|
||||
@@ -106,6 +106,8 @@ public class RandomDeckGenerator extends DeckProxy implements Comparable<RandomD
|
||||
return DeckgenUtil.buildLDACArchetypeDeck(FModel.getFormats().getStandard(),isAi);
|
||||
case PIONEER_CARDGEN_DECK:
|
||||
return DeckgenUtil.buildLDACArchetypeDeck(FModel.getFormats().getPioneer(),isAi);
|
||||
case HISTORIC_CARDGEN_DECK:
|
||||
return DeckgenUtil.buildLDACArchetypeDeck(FModel.getFormats().getHistoric(),isAi);
|
||||
case MODERN_CARDGEN_DECK:
|
||||
return DeckgenUtil.buildLDACArchetypeDeck(FModel.getFormats().getModern(),isAi);
|
||||
case LEGACY_CARDGEN_DECK:
|
||||
|
||||
@@ -42,6 +42,9 @@ public class GauntletUtil {
|
||||
case PIONEER_CARDGEN_DECK:
|
||||
deck = DeckgenUtil.buildLDACArchetypeDeck(FModel.getFormats().getPioneer(),true);
|
||||
break;
|
||||
case HISTORIC_CARDGEN_DECK:
|
||||
deck = DeckgenUtil.buildLDACArchetypeDeck(FModel.getFormats().getHistoric(),true);
|
||||
break;
|
||||
case MODERN_CARDGEN_DECK:
|
||||
deck = DeckgenUtil.buildLDACArchetypeDeck(FModel.getFormats().getModern(),true);
|
||||
break;
|
||||
|
||||
@@ -39,6 +39,9 @@ public class TournamentUtil {
|
||||
case PIONEER_CARDGEN_DECK:
|
||||
deck = DeckgenUtil.buildCardGenDeck(FModel.getFormats().getPioneer(),true);
|
||||
break;
|
||||
case HISTORIC_CARDGEN_DECK:
|
||||
deck = DeckgenUtil.buildCardGenDeck(FModel.getFormats().getHistoric(),true);
|
||||
break;
|
||||
case MODERN_CARDGEN_DECK:
|
||||
deck = DeckgenUtil.buildCardGenDeck(FModel.getFormats().getModern(),true);
|
||||
break;
|
||||
|
||||
@@ -6,7 +6,7 @@ import com.google.common.base.Predicates;
|
||||
import com.google.common.collect.Iterables;
|
||||
import com.google.common.collect.Lists;
|
||||
|
||||
//import forge.GuiDesktop;
|
||||
import forge.GuiDesktop;
|
||||
import forge.StaticData;
|
||||
import forge.card.CardRules;
|
||||
import forge.card.CardRulesPredicates;
|
||||
@@ -15,6 +15,7 @@ import forge.deck.DeckFormat;
|
||||
import forge.deck.io.Archetype;
|
||||
import forge.deck.io.CardThemedLDAIO;
|
||||
import forge.deck.io.DeckStorage;
|
||||
import forge.gui.GuiBase;
|
||||
import forge.lda.dataset.Dataset;
|
||||
import forge.lda.lda.LDA;
|
||||
import forge.game.GameFormat;
|
||||
@@ -42,7 +43,7 @@ public final class LDAModelGenetrator {
|
||||
|
||||
|
||||
public static final void main(String[] args){
|
||||
//GuiBase.setInterface(new GuiDesktop());
|
||||
GuiBase.setInterface(new GuiDesktop());
|
||||
FModel.initialize(null, new Function<ForgePreferences, Void>() {
|
||||
@Override
|
||||
public Void apply(ForgePreferences preferences) {
|
||||
@@ -57,6 +58,7 @@ public final class LDAModelGenetrator {
|
||||
List<String> formatStrings = new ArrayList<>();
|
||||
formatStrings.add(FModel.getFormats().getStandard().getName());
|
||||
formatStrings.add(FModel.getFormats().getPioneer().getName());
|
||||
formatStrings.add(FModel.getFormats().getHistoric().getName());
|
||||
formatStrings.add(FModel.getFormats().getModern().getName());
|
||||
formatStrings.add("Legacy");
|
||||
formatStrings.add("Vintage");
|
||||
|
||||
Reference in New Issue
Block a user