Random Battle updates

This commit is contained in:
The Immortal
2019-04-15 16:58:48 +04:00
parent 0133ba9bd6
commit b0901e6fc9
5 changed files with 30 additions and 29 deletions

View File

@@ -64,7 +64,7 @@ let BattleFormatsData = {
tier: "NFE",
},
charizard: {
randomBattleMoves: ["fireblast", "airslash", "focusblast", "roost", "swordsdance", "flamecharge", "acrobatics", "earthquake", "willowisp"],
randomBattleMoves: ["holdhands", "fireblast", "airslash", "earthquake", "roost"],
randomDoubleBattleMoves: ["heatwave", "fireblast", "airslash", "overheat", "dragonpulse", "roost", "tailwind", "protect"],
eventPokemon: [
{"generation": 3, "level": 70, "moves": ["wingattack", "slash", "dragonrage", "firespin"], "pokeball": "pokeball"},
@@ -5333,8 +5333,8 @@ let BattleFormatsData = {
doublesTier: "(DUU)",
},
azelf: {
randomBattleMoves: ["nastyplot", "psyshock", "fireblast", "dazzlinggleam", "stealthrock", "knockoff", "taunt", "explosion", "uturn"],
randomDoubleBattleMoves: ["nastyplot", "psychic", "fireblast", "thunderbolt", "icepunch", "knockoff", "zenheadbutt", "uturn", "trick", "taunt", "protect", "dazzlinggleam"],
randomBattleMoves: ["nastyplot", "psyshock", "fireblast", "dazzlinggleam", "stealthrock", "knockoff", "taunt", "explosion"],
randomDoubleBattleMoves: ["nastyplot", "psychic", "fireblast", "thunderbolt", "icepunch", "knockoff", "zenheadbutt", "uturn", "taunt", "protect", "dazzlinggleam"],
eventPokemon: [
{"generation": 4, "level": 50, "shiny": 1, "moves": ["confusion", "uproar", "futuresight", "nastyplot"]},
{"generation": 4, "level": 50, "shiny": 1, "moves": ["swift", "uproar", "futuresight", "nastyplot"]},
@@ -7175,7 +7175,7 @@ let BattleFormatsData = {
},
heliolisk: {
randomBattleMoves: ["raindance", "thunder", "hypervoice", "surf", "darkpulse", "hiddenpowerice", "voltswitch", "thunderbolt"],
randomDoubleBattleMoves: ["surf", "voltswitch", "hiddenpowerice", "raindance", "thunder", "darkpulse", "thunderbolt", "electricterrain", "protect"],
randomDoubleBattleMoves: ["surf", "voltswitch", "hiddenpowerice", "raindance", "thunder", "darkpulse", "thunderbolt", "protect"],
tier: "NU",
doublesTier: "(DUU)",
},
@@ -7193,7 +7193,7 @@ let BattleFormatsData = {
doublesTier: "(DUU)",
},
amaura: {
randomBattleMoves: ["naturepower", "hypervoice", "ancientpower", "thunderbolt", "darkpulse", "thunderwave", "dragontail", "flashcannon"],
randomBattleMoves: ["hypervoice", "ancientpower", "thunderbolt", "darkpulse", "thunderwave", "dragontail", "flashcannon"],
eventPokemon: [
{"generation": 6, "level": 10, "isHidden": true, "moves": ["growl", "powdersnow", "thunderwave", "rockthrow"], "pokeball": "cherishball"},
],

View File

@@ -263,6 +263,9 @@ class RandomGen5Teams extends RandomGen6Teams {
case 'endeavor':
if (slot > 0) rejected = true;
break;
case 'judgment':
if (counter.setupType !== 'Special' && counter.stab > 1) rejected = true;
break;
case 'return':
if (hasMove['bodyslam'] || hasMove['facade'] || hasMove['doubleedge'] || hasMove['tailslap']) rejected = true;
break;

View File

@@ -40,7 +40,7 @@ let BattleFormatsData = {
},
charizard: {
inherit: true,
randomBattleMoves: ["fireblast", "airslash", "focusblast", "roost", "swordsdance", "flareblitz", "acrobatics", "earthquake", "willowisp"],
randomBattleMoves: ["fireblast", "airslash", "roost", "swordsdance", "flareblitz", "acrobatics", "earthquake", "willowisp"],
randomDoubleBattleMoves: ["heatwave", "fireblast", "airslash", "overheat", "dragonpulse", "roost", "tailwind", "protect"],
tier: "NU",
doublesTier: "(DUU)",
@@ -3223,8 +3223,8 @@ let BattleFormatsData = {
},
azelf: {
inherit: true,
randomBattleMoves: ["nastyplot", "psyshock", "fireblast", "dazzlinggleam", "stealthrock", "knockoff", "taunt", "explosion", "uturn"],
randomDoubleBattleMoves: ["nastyplot", "psychic", "fireblast", "thunderbolt", "icepunch", "knockoff", "zenheadbutt", "uturn", "trick", "taunt", "protect", "dazzlinggleam"],
randomBattleMoves: ["nastyplot", "psyshock", "fireblast", "dazzlinggleam", "stealthrock", "knockoff", "taunt", "explosion"],
randomDoubleBattleMoves: ["nastyplot", "psychic", "fireblast", "thunderbolt", "icepunch", "knockoff", "zenheadbutt", "uturn", "taunt", "protect", "dazzlinggleam"],
tier: "OU",
doublesTier: "(DUU)",
},
@@ -4578,7 +4578,7 @@ let BattleFormatsData = {
},
heliolisk: {
randomBattleMoves: ["raindance", "thunder", "hypervoice", "surf", "darkpulse", "hiddenpowerice", "voltswitch", "thunderbolt"],
randomDoubleBattleMoves: ["surf", "voltswitch", "hiddenpowerice", "raindance", "thunder", "darkpulse", "thunderbolt", "electricterrain", "protect"],
randomDoubleBattleMoves: ["surf", "voltswitch", "hiddenpowerice", "raindance", "thunder", "darkpulse", "thunderbolt", "protect"],
tier: "UU",
doublesTier: "(DUU)",
},
@@ -4595,7 +4595,7 @@ let BattleFormatsData = {
},
amaura: {
inherit: true,
randomBattleMoves: ["naturepower", "hypervoice", "ancientpower", "thunderbolt", "darkpulse", "thunderwave", "dragontail", "flashcannon"],
randomBattleMoves: ["hypervoice", "ancientpower", "thunderbolt", "darkpulse", "thunderwave", "dragontail", "flashcannon"],
tier: "LC",
},
aurorus: {

View File

@@ -287,10 +287,7 @@ class RandomGen6Teams extends RandomTeams {
if (hasMove['discharge'] || (hasMove['raindance'] && hasMove['thunder']) || (hasMove['voltswitch'] && hasMove['wildcharge'])) rejected = true;
break;
case 'dazzlinggleam':
if (hasMove['playrough'] && counter.setupType !== 'Special') rejected = true;
break;
case 'drainingkiss':
if (hasMove['dazzlinggleam'] || counter.setupType !== 'Special') rejected = true;
if (hasMove['drainingkiss'] || hasMove['playrough'] && counter.setupType !== 'Special') rejected = true;
break;
case 'aurasphere': case 'focusblast':
if ((hasMove['closecombat'] || hasMove['superpower']) && counter.setupType !== 'Special') rejected = true;
@@ -388,7 +385,7 @@ class RandomGen6Teams extends RandomTeams {
if (hasMove['rest'] || !counter.stab && counter.damagingMoves.length < 2) rejected = true;
break;
case 'hypervoice':
if (hasMove['blizzard'] || hasMove['naturepower'] || hasMove['return']) rejected = true;
if (hasMove['blizzard'] || hasMove['return']) rejected = true;
break;
case 'judgment':
if (counter.setupType !== 'Special' && counter.stab > 1) rejected = true;
@@ -623,6 +620,8 @@ class RandomGen6Teams extends RandomTeams {
rejectAbility = !hasMove['raindance'] && !teamDetails['rain'];
} else if (ability === 'Ice Body' || ability === 'Snow Cloak') {
rejectAbility = !teamDetails['hail'];
} else if (ability === 'Intimidate') {
rejectAbility = hasMove['bodyslam'] || abilities.includes('Reckless') && counter['recoil'] > 1;
} else if (ability === 'Lightning Rod') {
rejectAbility = template.types.includes('Ground');
} else if (ability === 'Limber') {
@@ -648,9 +647,9 @@ class RandomGen6Teams extends RandomTeams {
} else if (ability === 'Scrappy') {
rejectAbility = !template.types.includes('Normal');
} else if (ability === 'Serene Grace') {
rejectAbility = !counter['serenegrace'] || template.species === 'Blissey' || template.species === 'Togetic';
rejectAbility = !counter['serenegrace'] || template.species === 'Blissey';
} else if (ability === 'Sheer Force') {
rejectAbility = !counter['sheerforce'] || template.isMega || (abilities.includes('Iron Fist') && counter['ironfist'] > counter['sheerforce']);
rejectAbility = !counter['sheerforce'] || hasMove['doubleedge'] || template.isMega || (abilities.includes('Iron Fist') && counter['ironfist'] > counter['sheerforce']);
} else if (ability === 'Simple') {
rejectAbility = !counter.setupType && !hasMove['cosmicpower'] && !hasMove['flamecharge'];
} else if (ability === 'Snow Warning') {
@@ -767,7 +766,7 @@ class RandomGen6Teams extends RandomTeams {
item = 'Power Herb';
} else if (hasMove['shellsmash']) {
item = (ability === 'Solid Rock' && counter['priority']) ? 'Weakness Policy' : 'White Herb';
} else if ((ability === 'Magic Guard' || ability === 'Sheer Force') && counter.damagingMoves.length > 1) {
} else if ((ability === 'Magic Guard' && counter.damagingMoves.length > 1) || (ability === 'Sheer Force' && !!counter['sheerforce'])) {
item = 'Life Orb';
} else if (ability === 'Poison Heal' || ability === 'Toxic Boost') {
item = 'Toxic Orb';

View File

@@ -483,7 +483,7 @@ class RandomTeams extends Dex.ModdedDex {
];
// Moves which boost Attack AND Special Attack:
let MixedSetup = [
'growth', 'happyhour', 'shellsmash', 'workup',
'growth', 'happyhour', 'holdhands', 'shellsmash', 'workup',
];
// Moves which boost Speed:
let SpeedSetup = [
@@ -718,7 +718,7 @@ class RandomTeams extends Dex.ModdedDex {
switch (moveid) {
// Not very useful without their supporting moves
case 'clangingscales': case 'electricterrain': case 'happyhour':
case 'clangingscales': case 'electricterrain': case 'happyhour': case 'holdhands':
if (teamDetails.zMove || hasMove['rest'] && hasMove['sleeptalk']) rejected = true;
break;
case 'cottonguard': case 'defendorder':
@@ -893,10 +893,7 @@ class RandomTeams extends Dex.ModdedDex {
if (hasAbility['Galvanize'] && !!counter['Normal']) rejected = true;
break;
case 'dazzlinggleam':
if (hasMove['playrough'] && counter.setupType !== 'Special') rejected = true;
break;
case 'drainingkiss':
if (hasMove['dazzlinggleam'] || counter.setupType !== 'Special' && !hasAbility['Triage']) rejected = true;
if (hasMove['drainingkiss'] || hasMove['playrough'] && counter.setupType !== 'Special') rejected = true;
break;
case 'moonblast':
if (isDoubles && hasMove['dazzlinggleam']) rejected = true;
@@ -1010,7 +1007,7 @@ class RandomTeams extends Dex.ModdedDex {
if (hasMove['rest'] || !counter.stab && counter.damagingMoves.length < 2) rejected = true;
break;
case 'hypervoice':
if (hasMove['blizzard'] || hasMove['naturepower'] || hasMove['return']) rejected = true;
if (hasMove['blizzard'] || hasMove['return']) rejected = true;
break;
case 'judgment':
if (counter.setupType !== 'Special' && counter.stab > 1) rejected = true;
@@ -1250,6 +1247,8 @@ class RandomTeams extends Dex.ModdedDex {
rejectAbility = !hasMove['raindance'] && !teamDetails['rain'];
} else if (ability === 'Ice Body' || ability === 'Slush Rush' || ability === 'Snow Cloak') {
rejectAbility = !teamDetails['hail'];
} else if (ability === 'Intimidate') {
rejectAbility = hasMove['bodyslam'] || abilities.includes('Reckless') && counter['recoil'] > 1;
} else if (ability === 'Lightning Rod') {
rejectAbility = template.types.includes('Ground');
} else if (ability === 'Limber') {
@@ -1281,9 +1280,9 @@ class RandomTeams extends Dex.ModdedDex {
} else if (ability === 'Scrappy') {
rejectAbility = !template.types.includes('Normal');
} else if (ability === 'Serene Grace') {
rejectAbility = !counter['serenegrace'] || template.species === 'Blissey' || template.species === 'Togetic';
rejectAbility = !counter['serenegrace'] || template.species === 'Blissey';
} else if (ability === 'Sheer Force') {
rejectAbility = !counter['sheerforce'] || template.isMega || (abilities.includes('Iron Fist') && counter['ironfist'] > counter['sheerforce']);
rejectAbility = !counter['sheerforce'] || hasMove['doubleedge'] || template.isMega || (abilities.includes('Iron Fist') && counter['ironfist'] > counter['sheerforce']);
} else if (ability === 'Simple') {
rejectAbility = !counter.setupType && !hasMove['cosmicpower'] && !hasMove['flamecharge'];
} else if (ability === 'Snow Warning') {
@@ -1470,7 +1469,7 @@ class RandomTeams extends Dex.ModdedDex {
item = 'Groundium Z';
} else if (hasMove['electricterrain']) {
item = 'Electrium Z';
} else if (hasMove['happyhour']) {
} else if (hasMove['happyhour'] || hasMove['holdhands']) {
item = 'Normalium Z';
} else if (hasMove['hydropump'] && ability === 'Battle Bond' && hasMove['uturn'] && !teamDetails.zMove) {
item = 'Waterium Z';
@@ -1484,7 +1483,7 @@ class RandomTeams extends Dex.ModdedDex {
item = 'Flyinium Z';
} else if (hasMove['solarbeam'] && ability !== 'Drought' && !hasMove['sunnyday'] && !teamDetails['sun']) {
item = !teamDetails.zMove ? 'Grassium Z' : 'Power Herb';
} else if ((ability === 'Magic Guard' || ability === 'Sheer Force') && counter.damagingMoves.length > 1) {
} else if ((ability === 'Magic Guard' && counter.damagingMoves.length > 1) || (ability === 'Sheer Force' && !!counter['sheerforce'])) {
item = 'Life Orb';
} else if (hasMove['rest'] && !hasMove['sleeptalk'] && ability !== 'Hydration' && ability !== 'Natural Cure' && ability !== 'Shed Skin') {
item = 'Chesto Berry';