* Standardize formatting of OM restrictions
Since I've already started adding and changing all of the OM banlists to
allow them to be viewable though `/om`, I figured that I'd take the
final step and standardize all OM banlists and restrictions. It's
understandable if you want things like 1v1's banlist and ruleset to
remain the same as before; I'll happily revert that part.
* Remove unnecessary space
* Unban Blazikenite from 1v1
* Revert 1v1 banlist to original state
* Re add new lines at end of file
This command is intended to be a quick-access option for checking banlists and rulesets for formats as well as descriptions of the rules that would get listed in case the user has questions.
This should lower the number of reports in the thread that just turn out to be misunderstood uncommon mechanics, and hopefully will lessen the number of reports in Dev
Previously, passing anything that started with a number to /dt would
make it look it up as a dex number.
This made it impossible to look up "10,000,000 Volt Thunderbolt".
Now, it has to be exactly a number and nothing else, to be considered
a dex number for the /dt lookup.
This is a surprisingly minor refactor considering how many files it
touches, but most of this is only renames.
In terms of file renames:
- `tools.js` is now `sim/dex.js`
- `battle-engine.js` is now `sim/index.js` and its three classes are
in `sim/battle.js`, `sim/side.js`, and `sim/pokemon.js`
- `prng.js` is now `sim/prng.js`
In terms of variable renames:
- `Tools` is now `Dex`
- `BattleEngine` is now `Sim`
- `BattleEngine.Battle` is now `Sim.Battle`
- `BattleEngine.BattleSide` is now `Sim.Side`
- `BattleEngine.BattlePokemon` is now `Sim.Pokemon`
Currently TypeScript is validating tools.js and is not particularly
strict about anything and we use 'any' a lot and it's not part of
'npm test' yet, but everything has to start somewhere!
tools.js has also been refactored majorly to use accessors rather
than loader functions. This basically means you don't need to do
Tools.includeData() or anything like that anymore. The new system is
also easier to make TypeScript-compatible.
See #3278
Specifically, user groups are now in /checkpunishment, which has been
renamed /offlinewhois. It doesn't actually function as an offline /whois
since it still requires auth.
Maybe making it not require auth should be a project to put in Ideas.