Update OM teambuilder support list
Some checks are pending
Node.js CI / build (22.x) (push) Waiting to run

This commit is contained in:
Kris Johnson 2026-03-01 03:50:32 -07:00
parent e263055242
commit c0ca6cbd90
2 changed files with 6 additions and 5 deletions

View File

@ -431,7 +431,7 @@ process.stdout.write("Building `data/teambuilder-tables.js`... ");
tierTable[speciesTier].push(id);
if (genNum >= 5) {
for (const meta of [
for (const meta of (isVGC && genNum === 9 ? ['4v4doublesuu'] : [
'1v1', '2v2doubles', 'lcuu', 'freeforall', 'ubersuu', 'almostanyability', 'balancedhackmons', 'godlygift', 'mixandmega', 'sharedpower', 'stabmons',
'12switch', '350cup', 'alphabetcup', 'badnboosted', 'battlefields', 'biomechmons', 'camomons', 'categoryswap', 'categoryswap',
'convergence', 'crossevolution', 'categoryswap', 'ferventimpersonation', 'foresighters', 'formemons', 'fortemons', 'franticfusions',
@ -439,8 +439,8 @@ process.stdout.write("Building `data/teambuilder-tables.js`... ");
'pokemoves', 'relayrace', 'revelationmons', 'sharingiscaring', 'teradonation', 'teraoverride', 'thecardgame',
'thelosersgame', 'trademarked', 'triples', 'typesplit', 'voltturnmayhem', 'flipped', 'monotype',
'aaa', 'bh', 'doubles', // natdex abbreviations
'tiershift',
]) {
'tiershift', 'linked'
])) {
const format = Dex.formats.get(`${gen}${isNatDex ? 'nationaldex' : ''}${meta}`);
if (!format.exists) continue;
const ruleTable = Dex.formats.getRuleTable(format);
@ -546,6 +546,7 @@ process.stdout.write("Building `data/teambuilder-tables.js`... ");
BattleTeambuilderTable[gen + 'vgc'] = {};
BattleTeambuilderTable[gen + 'vgc'].tiers = tiers;
BattleTeambuilderTable[gen + 'vgc'].formatSlices = formatSlices;
if (genNum === 9) BattleTeambuilderTable[gen + 'vgc'].metagameBans = metagameBans;
} else if (isDoubles) {
BattleTeambuilderTable[gen + 'doubles'] = {};
BattleTeambuilderTable[gen + 'doubles'].tiers = tiers;

View File

@ -1003,7 +1003,7 @@ class BattlePokemonSearch extends BattleTypedSearch<'pokemon'> {
const format = this.format;
if (!format) return this.getDefaultResults();
const isVGCOrBS = format.startsWith('battlespot') || format.startsWith('bss') ||
format.startsWith('battlestadium') || format.startsWith('vgc');
format.startsWith('battlestadium') || format.startsWith('vgc') || format === '4v4doublesuu';
const isHackmons = format.includes('hackmons') || format.endsWith('bh');
let isDoublesOrBS = isVGCOrBS || this.formatType?.includes('doubles');
const dex = this.dex;
@ -1162,7 +1162,7 @@ class BattlePokemonSearch extends BattleTypedSearch<'pokemon'> {
'pokemoves', 'relayrace', 'revelationmons', 'sharingiscaring', 'teradonation', 'teraoverride', 'thecardgame',
'thelosersgame', 'trademarked', 'triples', 'typesplit', 'voltturnmayhem', 'flipped', 'monotype', 'stabmonsmixandmega',
'aaa', 'bh', 'doubles', // natdex abbreviations
'tiershift',
'tiershift', 'linked', '4v4doublesuu',
];
if (dex.gen >= 6) {
if (customBanlists.includes(format) && table.metagameBans?.[format]) {