Validator Rule "-all pokemon" doesn't work with NatDex formats

Jumpheart

solomods apologist
is a Top Metagame Resource Contributor
What type of bug are you reporting? Validator

What is the bug?
The "all Pokemon" clause in the challenge commands only affects Pokemon that are legal in the current gen (i.e., does not effect Pokemon restricted to NatDex tiers).

By banning "all Pokemon", it bans all Pokemon legal in Gen 9--not every Pokemon. This is important for tiers and tournaments that use NatDex tiers as a base.

Possible that this is not a bug and intentional behavior, but there are multiple smaller tiers I know (including one I run) that use NatDex as a base, so by challenge code all 3 Gen 6 legendaries are legal in any tier that uses "-all Pokemon" in their challenge code to set a custom restriction.

Are you able to replicate it? If so, how?
Yes, by challenging using a custom challenge code. Here's an example challenge code that you can plug and play that should only allow Meditite, but allows any Pokemon not in Gen 9.

Code:
/challenge gen9nationaldexubers @@@ -all Pokemon, +Meditite

And here is a team that tests it. Purrloin and Yveltal should not be legal intuitively, but validate when sending the challenge.

https://pokepast.es/5b91e6e2e4ffdcf0

When attempted to challenge with this team and this code, the only error is Arceus being banned.


IMG_5836.jpeg
IMG_5837.jpeg
 
Yeah, it's intended behavior, but the consequence is anything but. The rule +Past serves a double purpose -- it's a class of mons/moves/etc to unban, which like any similar rule like +OU will trump a ban of "all pokemon". But it's also what the validator looks for when determining what kind of move validation to use.

Assuming the purpose of using NatDex as the base format is to use past move validation, it might be best to separate it out into a separate clause. The old convention used to be to look for the "Standard NatDex" rule, which was no better.
 
Maybe instead of “specific rules always trump generic rules”, we should have added rules (the ones after @@@) always trump base rules. I can’t think of a scenario where a user would actually want the rule they added to be trumped by something included as part of the default format.
 
Thank you, I appreciate the responses.

I can't speak for every tier that uses challenge codes, but for my purposes, the tier is based off of National Dex, but with a vast majority of the Pokedex banned. So the intent of using NatDex (Ubers, in this case) was to have National Dex movepools, and allow some Pokemon that are not in the Paldea Dex.

When making the challenge code, it seemed easy enough to just use National Dex Ubers, ban "all Pokemon", and then unban the specific legal Pokemon. Unfortunately this led to someone bringing an illegal Pokemon (Purrloin) that is supposed to be banned in a tournament, despite them using the tier's challenge code (in the games, you can see that they do have Z-Move and Terastal Clause, which are a part of the challenge code we use).

As such, this is a two-pronged question, one a direct question and the other not so much:
1. How are you supposed to accomplish this with the current validator rules? I did a little tinkering but I am far from an expert in challenge code creation so I was unable to get it to work fully without making the (already monstrous) challenge code larger by unbanning every past move as well. Banning -Past as well doesn't work as you said because it bans moves as well. Is it possible, or do we have to do -Past, -all Pokemon, then manually add back... basically everything?

2. The status quo of "all Pokemon", while intended, seems counterintuitive, as the rule doesn't actually ban all Pokemon, at least in a National Dex context. I absolutely understand how this functionality is desirable, and how current gen tends to trump National Dex in these scenarios, but could changes be made to prevent mistakes like this?
 
Back
Top