intended in-game-mechanic. megas are considered the "original forms" which means items the unmega can use, the mega can as well(barring its own stone which is likely "blacklisted" from that list so you cant infinitely mega evo.) hence why stuff like soul dew works, and why you can mega evolve into the other mega.why is mega charizard y allowed to mega evolve into mega charizard x and vice versa? is this a bug and/or oversight or is this an intentional mechanic?
I kinda like this, as it always put me off. Would it be broken tho?Have someone asked this before?
runbabyrun would it be fine if you allow us to use Giratina-O without Griseous Orb? It's not a mega but it's kind of interesting to use other items on it, considering I think it is generally better than regular Giratina.
How is Giratina-O shit? It's one of the best checks to EKiller/PDon/Blaziken/MMence (standard ubers tina-o physical defog set: +1 252 Atk Life Orb Aerilate Mega Salamence Return vs. 0 HP / 248 Def Giratina-O: 364-429 (82.5 - 97.2%) -- guaranteed 2HKO) among others and gets Defog. Giratina-A in general is bulky af, able to check Arceus. They might not be the best but they are certainly viable. As for whether Tina-O should be legal w/o Griseous Orb, I think it should. One could argue that it should just be Megas, but the Primals were legal without Orbs for a while (though now are banned and rightfully so) right? Giratina should be put in that same boat imo.Considering Giratina and Giratina-O are kind of shit... no.
Anybody want to unban everything?
I think the difference is the fact that while this is an alternate forme, it is not an in-battle one, and also the Primals are Primal evolutionsHow is Giratina-O shit? It's one of the best checks to EKiller/PDon/Blaziken/MMence (standard ubers tina-o physical defog set: +1 252 Atk Life Orb Aerilate Mega Salamence Return vs. 0 HP / 248 Def Giratina-O: 364-429 (82.5 - 97.2%) -- guaranteed 2HKO) among others and gets Defog. Giratina-A in general is bulky af, able to check Arceus. They might not be the best but they are certainly viable. As for whether Tina-O should be legal w/o Griseous Orb, I think it should. One could argue that it should just be Megas, but the Primals were legal without Orbs for a while (though now are banned and rightfully so) right? Giratina should be put in that same boat imo.
yes
Well, technically primal reversions, but I take your point. Still, if you send a regular Giratina into battle with the griseous orb, its form changes.I think the difference is the fact that while this is an alternate forme, it is not an in-battle one, and also the Primals are Primal evolutions
Shit is an overstatement, I wouldn't say its excellent though. Checking Arceus is neat, and probably checking Lucario as well, but the former isn't as used and the ladder can actually beat it depending on both sets. But alas, they have their issues. I'd say both forms struggle with being passive, but A form to a higher extent. It's utility basically starts and ends with Will o wisp, dragon tail and toxic/hex. So you're really just bait for a various of things, but Xerneas and Diancie mostly. It's really bulky but also somewhat of a sitting duck.How is Giratina-O shit? It's one of the best checks to EKiller/PDon/Blaziken/MMence (standard ubers tina-o physical defog set: +1 252 Atk Life Orb Aerilate Mega Salamence Return vs. 0 HP / 248 Def Giratina-O: 364-429 (82.5 - 97.2%) -- guaranteed 2HKO) among others and gets Defog. Giratina-A in general is bulky af, able to check Arceus. They might not be the best but they are certainly viable. As for whether Tina-O should be legal w/o Griseous Orb, I think it should. One could argue that it should just be Megas, but the Primals were legal without Orbs for a while (though now are banned and rightfully so) right? Giratina should be put in that same boat imo.
yes
If you were to allow Giratina-O to hold other items, at that point you'd also have to logically allow Arceus forms hold items other than their respective plates (from what I understand, both form changes manifest themselves only in battle, similar to Primals -- never had an Arceus in game, though, so don't quote me on that). Not going to lie, that sounds kind of cool, but I still wouldn't support either change. The premise of this metagame is in the title -- Megamons. Its about unrestricted Mega use, not unrestricted alternate form use. While "Almost Any Alternate Form" could be neat, it's a different OM.
then why were primals allowed to not use their stones at one point? they are completely different form changes. if they already broke that rule, this argument is pretty much invalid. despite agreeing with you guys that id rather not have origin form due to the premise of the meta, i want to bring this up, because primals are NOT mega evolution and they were an exception into it. they are forms SLIGHTLY similar to mega evolution(like, 40% similar for a numeral comparason), but they AREN'T mega evolution.Basically the above. This isn't Megamons if you do stuff like Giratina-O.
Because psychologically we pair them together. They were released simultaneously and do share a similarity in how they work. Whether you agree or not, in our mind, we think of Primal Reversion as a variant of Mega Evolution that is automatic.then why were primals allowed to not use their stones at one point? they are completely different form changes. if they already broke that rule, this argument is pretty much invalid. despite agreeing with you guys that id rather not have origin form due to the premise of the meta, i want to bring this up, because primals are NOT mega evolution and they were an exception into it. they are forms SLIGHTLY similar to mega evolution(like, 40% similar for a numeral comparason), but they AREN'T mega evolution.
for comparason of stuff mega evolution as a form change itself does thats different,
mega evolution specificly gives:
100 bst total increase - primals DO gain 100. 1/5
manually mega evolve whenever during a battle.-primals don't do this
megas need mega stones to evolve-primals do this but with orbs instead so ill give half a point for a similar concept 1.5/5
megas have a "mega-" prefix- primals obviously do not have this but have a hybrid of this with "primal-". so another half point. 2/5
Restriction of 1 per team- not only do primals NOT have this, they have absolutely no restriction whatsoever. 2/5
those are the five main catigories that seperates megas from other forms, and primal evolution has roughly less then half of these. it annoys me that people think primals are variants of mega evolution because they don't have enough in common/have any correlation with eachother. they are just form changes that are inspired by mega evolution.
Since voting is over, can you un-restrict Salamence-Mega from holding an item, The Immortal?Sorry! I've been extremely busy these last few weeks. But yeah, Mega-Salamance will not be restricted from holding an item.
Thank you to everyone who participated in the discussion!
{
name: "Megamons",
desc: ["• <a href=\"https://www.smogon.com/forums/threads/3566648/\">Megamons</a>"],
section: "OM of the Month",
ruleset: ['Species Clause', 'Nickname Clause', 'Moody Clause', 'OHKO Clause', 'Evasion Moves Clause', 'Swagger Clause', 'Mega Rayquaza Clause', 'Sleep Clause Mod', 'Endless Battle Clause', 'HP Percentage Mod', 'Cancel Mod', 'Team Preview'],
banlist: ['Unreleased', 'Illegal', 'Gengar-Mega', 'Mewtwo-Mega-X', 'Mewtwo-Mega-Y', 'Rayquaza-Mega', 'Salamence-Mega'],
onValidateTeam: function (team) {
let problems = [];
let kyurems = 0;
for (let i = 0; i < team.length; i++) {
if (team[i].species === 'Kyurem-White' || team[i].species === 'Kyurem-Black') {
if (kyurems > 0) {
problems.push('You cannot have more than one Kyurem-Black/Kyurem-White.');
break;
}
kyurems++;
}
}
return problems;
},
onChangeSet: function (set, format) {
let item = this.getItem(set.item);
let template = this.getTemplate(set.species);
let problems = [];
let totalEV = 0;
if (set.species === set.name) delete set.name;
if (set.moves) {
for (let i = 0; i < set.moves.length; i++) {
let move = this.getMove(set.moves[i]);
if (move.isNonstandard) {
problems.push(move.name + ' does not exist.');
}
}
}
if (set.moves && set.moves.length > 4) {
problems.push((set.name || set.species) + ' has more than four moves.');
}
if (set.level && set.level > 100) {
problems.push((set.name || set.species) + ' is higher than level 100.');
}
if (template.isNonstandard) {
problems.push(set.species + ' does not exist.');
}
if (this.getAbility(set.ability).isNonstandard) {
problems.push(set.ability + ' does not exist.');
}
if (item.isNonstandard) {
if (item.isNonstandard === 'gen2') {
problems.push(item.name + ' does not exist outside of gen 2.');
} else {
problems.push(item.name + ' does not exist.');
}
}
for (let k in set.evs) {
if (typeof set.evs[k] !== 'number' || set.evs[k] < 0) {
set.evs[k] = 0;
}
totalEV += set.evs[k];
}
if (totalEV > 510) {
problems.push((set.name || set.species) + " has more than 510 total EVs.");
}
if (template.gender) {
if (set.gender !== template.gender) {
set.gender = template.gender;
}
} else {
if (set.gender !== 'M' && set.gender !== 'F') {
set.gender = undefined;
}
}
let baseTemplate = this.getTemplate(template.baseSpecies);
if (set.ivs && baseTemplate.gen >= 6 && (template.eggGroups[0] === 'Undiscovered' || template.species === 'Manaphy') && !template.prevo && !template.nfe && template.species !== 'Unown' && template.baseSpecies !== 'Pikachu' && (template.baseSpecies !== 'Diancie' || !set.shiny)) {
let perfectIVs = 0;
for (let i in set.ivs) {
if (set.ivs[i] >= 31) perfectIVs++;
}
if (perfectIVs < 3) problems.push((set.name || set.species) + " must have at least three perfect IVs because it's a legendary in gen 6.");
}
let moves = [];
if (set.moves) {
let hasMove = {};
for (let i = 0; i < set.moves.length; i++) {
let move = this.getMove(set.moves[i]);
let moveid = move.id;
if (hasMove[moveid]) continue;
hasMove[moveid] = true;
moves.push(set.moves[i]);
}
}
set.moves = moves;
let battleForme = template.battleOnly && template.species;
if (battleForme && !template.isMega) {
if (template.requiredAbility && set.ability !== template.requiredAbility) {
problems.push("" + template.species + " transforms in-battle with " + template.requiredAbility + "."); // Darmanitan-Zen
}
if (template.requiredItem && item.name !== template.requiredItem) {
problems.push("" + template.species + " transforms in-battle with " + template.requiredItem + '.'); // Primal
}
if (template.requiredMove && set.moves.indexOf(toId(template.requiredMove)) < 0) {
problems.push("" + template.species + " transforms in-battle with " + template.requiredMove + "."); // Meloetta-Pirouette
}
if (!format.noChangeForme) set.species = template.baseSpecies; // Fix forme for Aegislash, Castform, etc.
} else {
if (template.requiredItem && item.name !== template.requiredItem && !template.isMega) {
problems.push("" + (set.name || set.species) + " needs to hold " + template.requiredItem + '.'); // Plate/Drive/Griseous Orb
}
if (template.requiredMove && set.moves.indexOf(toId(template.requiredMove)) < 0 && !template.isMega) {
problems.push("" + (set.name || set.species) + " needs to have the move " + template.requiredMove + "."); // Keldeo-Resolute
}
if (item.forcedForme && template.species === this.getTemplate(item.forcedForme).baseSpecies && !format.noChangeForme) {
set.species = item.forcedForme;
}
}
if (set.species !== template.species) {
template = this.getTemplate(set.species);
if (!format.noChangeAbility) {
let legalAbility = false;
for (let i in template.abilities) {
if (template.abilities[i] !== set.ability) continue;
legalAbility = true;
break;
}
if (!legalAbility) {
set.ability = template.abilities['0'];
}
}
}
if (set.shiny && template.unobtainableShiny) {
problems.push("It's currently not possible to get a shiny " + template.species + ".");
}
return problems;
},
onSwitchIn: function (pokemon) {
let item = pokemon.getItem();
if (item.megaEvolves && pokemon.template.species === item.megaEvolves) {
pokemon.canMegaEvo = item.megaStone;
}
},
},
{
name: "Megamons",
desc: ["• <a href=\"https://www.smogon.com/forums/threads/3566648/\">Megamons</a>"],
section: "Other Metagames",
mod: 'megamons',
ruleset: ['Ubers'],
},
'use strict';
exports.BattleScripts = {
init: function () {
for (let i in this.data.Pokedex) {
let pokemon = this.data.Pokedex[i];
switch (pokemon.species) {
case 'Gengar-Mega':
case 'Mewtwo-Mega-X':
case 'Mewtwo-Mega-Y':
case 'Rayquaza-Mega':
break;
default:
switch (pokemon.forme) {
case 'Mega':
case 'Mega-X':
case 'Mega-Y':
this.modData('Pokedex', i).gen = 6;
this.modData('Pokedex', i).isMega = true;
this.modData('Pokedex', i).battleOnly = false;
delete this.modData('FormatsData', i).requiredItem;
}
}
}
},
};
Not using a mod is preferred. Mods take up more resources.As practice for hosting various OMs I noticed that the code for Megamons was somewhat long:I've implemented it on rom with the following code:Code:{ name: "Megamons", desc: ["• <a href=\"https://www.smogon.com/forums/threads/3566648/\">Megamons</a>"], section: "OM of the Month", ruleset: ['Species Clause', 'Nickname Clause', 'Moody Clause', 'OHKO Clause', 'Evasion Moves Clause', 'Swagger Clause', 'Mega Rayquaza Clause', 'Sleep Clause Mod', 'Endless Battle Clause', 'HP Percentage Mod', 'Cancel Mod', 'Team Preview'], banlist: ['Unreleased', 'Illegal', 'Gengar-Mega', 'Mewtwo-Mega-X', 'Mewtwo-Mega-Y', 'Rayquaza-Mega', 'Salamence-Mega'], onValidateTeam: function (team) { let problems = []; let kyurems = 0; for (let i = 0; i < team.length; i++) { if (team[i].species === 'Kyurem-White' || team[i].species === 'Kyurem-Black') { if (kyurems > 0) { problems.push('You cannot have more than one Kyurem-Black/Kyurem-White.'); break; } kyurems++; } } return problems; }, onChangeSet: function (set, format) { let item = this.getItem(set.item); let template = this.getTemplate(set.species); let problems = []; let totalEV = 0; if (set.species === set.name) delete set.name; if (set.moves) { for (let i = 0; i < set.moves.length; i++) { let move = this.getMove(set.moves[i]); if (move.isNonstandard) { problems.push(move.name + ' does not exist.'); } } } if (set.moves && set.moves.length > 4) { problems.push((set.name || set.species) + ' has more than four moves.'); } if (set.level && set.level > 100) { problems.push((set.name || set.species) + ' is higher than level 100.'); } if (template.isNonstandard) { problems.push(set.species + ' does not exist.'); } if (this.getAbility(set.ability).isNonstandard) { problems.push(set.ability + ' does not exist.'); } if (item.isNonstandard) { if (item.isNonstandard === 'gen2') { problems.push(item.name + ' does not exist outside of gen 2.'); } else { problems.push(item.name + ' does not exist.'); } } for (let k in set.evs) { if (typeof set.evs[k] !== 'number' || set.evs[k] < 0) { set.evs[k] = 0; } totalEV += set.evs[k]; } if (totalEV > 510) { problems.push((set.name || set.species) + " has more than 510 total EVs."); } if (template.gender) { if (set.gender !== template.gender) { set.gender = template.gender; } } else { if (set.gender !== 'M' && set.gender !== 'F') { set.gender = undefined; } } let baseTemplate = this.getTemplate(template.baseSpecies); if (set.ivs && baseTemplate.gen >= 6 && (template.eggGroups[0] === 'Undiscovered' || template.species === 'Manaphy') && !template.prevo && !template.nfe && template.species !== 'Unown' && template.baseSpecies !== 'Pikachu' && (template.baseSpecies !== 'Diancie' || !set.shiny)) { let perfectIVs = 0; for (let i in set.ivs) { if (set.ivs[i] >= 31) perfectIVs++; } if (perfectIVs < 3) problems.push((set.name || set.species) + " must have at least three perfect IVs because it's a legendary in gen 6."); } let moves = []; if (set.moves) { let hasMove = {}; for (let i = 0; i < set.moves.length; i++) { let move = this.getMove(set.moves[i]); let moveid = move.id; if (hasMove[moveid]) continue; hasMove[moveid] = true; moves.push(set.moves[i]); } } set.moves = moves; let battleForme = template.battleOnly && template.species; if (battleForme && !template.isMega) { if (template.requiredAbility && set.ability !== template.requiredAbility) { problems.push("" + template.species + " transforms in-battle with " + template.requiredAbility + "."); // Darmanitan-Zen } if (template.requiredItem && item.name !== template.requiredItem) { problems.push("" + template.species + " transforms in-battle with " + template.requiredItem + '.'); // Primal } if (template.requiredMove && set.moves.indexOf(toId(template.requiredMove)) < 0) { problems.push("" + template.species + " transforms in-battle with " + template.requiredMove + "."); // Meloetta-Pirouette } if (!format.noChangeForme) set.species = template.baseSpecies; // Fix forme for Aegislash, Castform, etc. } else { if (template.requiredItem && item.name !== template.requiredItem && !template.isMega) { problems.push("" + (set.name || set.species) + " needs to hold " + template.requiredItem + '.'); // Plate/Drive/Griseous Orb } if (template.requiredMove && set.moves.indexOf(toId(template.requiredMove)) < 0 && !template.isMega) { problems.push("" + (set.name || set.species) + " needs to have the move " + template.requiredMove + "."); // Keldeo-Resolute } if (item.forcedForme && template.species === this.getTemplate(item.forcedForme).baseSpecies && !format.noChangeForme) { set.species = item.forcedForme; } } if (set.species !== template.species) { template = this.getTemplate(set.species); if (!format.noChangeAbility) { let legalAbility = false; for (let i in template.abilities) { if (template.abilities[i] !== set.ability) continue; legalAbility = true; break; } if (!legalAbility) { set.ability = template.abilities['0']; } } } if (set.shiny && template.unobtainableShiny) { problems.push("It's currently not possible to get a shiny " + template.species + "."); } return problems; }, onSwitchIn: function (pokemon) { let item = pokemon.getItem(); if (item.megaEvolves && pokemon.template.species === item.megaEvolves) { pokemon.canMegaEvo = item.megaStone; } }, },
It seems to work...config/formats.jsmods/megamons/scripts.jsCode:{ name: "Megamons", desc: ["• <a href=\"https://www.smogon.com/forums/threads/3566648/\">Megamons</a>"], section: "Other Metagames", mod: 'megamons', ruleset: ['Ubers'], },
Code:'use strict'; exports.BattleScripts = { init: function () { for (let i in this.data.Pokedex) { let pokemon = this.data.Pokedex[i]; switch (pokemon.species) { case 'Gengar-Mega': case 'Mewtwo-Mega-X': case 'Mewtwo-Mega-Y': case 'Rayquaza-Mega': break; default: switch (pokemon.forme) { case 'Mega': case 'Mega-X': case 'Mega-Y': this.modData('Pokedex', i).gen = 6; this.modData('Pokedex', i).isMega = true; this.modData('Pokedex', i).battleOnly = false; delete this.modData('FormatsData', i).requiredItem; } } } }, };