@pkmn/sim 0.5.23 → 0.5.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../lib/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../lib/utils.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAIH;;;;;;;;;;;;;GAaG;AAEH,SAAgB,SAAS,CAAC,GAAQ;IACjC,OAAO,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;AAC7E,CAAC;AAFD,8BAEC;AAED,SAAgB,WAAW,CAAC,GAAW;IACtC,OAAO,GAAG,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;AACnD,CAAC;AAFD,kCAEC;AAED;;EAEE;AACF,SAAgB,UAAU,CAAC,GAAoB;IAC9C,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACjD,OAAO,CAAC,EAAE,GAAG,GAAG,CAAC;SACf,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;SACvB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;SACvB,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC;SACxB,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AAC5B,CAAC;AAVD,gCAUC;AAED;;GAEG;AACH,SAAgB,SAAS,CAAC,WAAmB;IAC5C,IAAI,CAAC,WAAW;QAAE,OAAO,EAAE,CAAC;IAC5B,OAAO,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AAC5C,CAAC;AAHD,8BAGC;AAED;;GAEG;AACH,SAAgB,WAAW,CAAC,KAAa;IACxC,wDAAwD;IACxD,IAAI,SAAS,GAAG,KAAK,GAAG,GAAG,CAAC;IAC5B,IAAI,SAAS,IAAI,EAAE,IAAI,SAAS,IAAI,EAAE;QAAE,OAAO,KAAK,GAAG,IAAI,CAAC;IAE5D,oDAAoD;IACpD,SAAS,GAAG,KAAK,GAAG,EAAE,CAAC;IACvB,IAAI,SAAS,KAAK,CAAC;QAAE,OAAO,KAAK,GAAG,IAAI,CAAC;IACzC,IAAI,SAAS,KAAK,CAAC;QAAE,OAAO,KAAK,GAAG,IAAI,CAAC;IACzC,IAAI,SAAS,KAAK,CAAC;QAAE,OAAO,KAAK,GAAG,IAAI,CAAC;IACzC,OAAO,KAAK,GAAG,IAAI,CAAC;AACrB,CAAC;AAXD,kCAWC;AAED;;GAEG;AACH,SAAgB,SAAS,CAAC,KAAU,EAAE,KAAK,GAAG,CAAC;IAC9C,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,WAAW,CAAC;IAC5C,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,MAAM,CAAC;IAClC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE;QAC5D,OAAO,GAAG,KAAK,EAAE,CAAC;KAClB;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC9B,OAAO,IAAI,KAAK,GAAG,CAAC,CAAC,cAAc;KACnC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC9B,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;KACxB;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACzB,IAAI,KAAK,GAAG,EAAE;YAAE,OAAO,SAAS,CAAC;QACjC,OAAO,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;KAC5E;IACD,IAAI,KAAK,YAAY,MAAM,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,YAAY,QAAQ,EAAE;QAClF,IAAI,KAAK,IAAI,KAAK,YAAY,QAAQ;YAAE,OAAO,UAAU,CAAC;QAC1D,OAAO,GAAG,KAAK,EAAE,CAAC;KAClB;IACD,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,WAAW,CAAC,IAAI,IAAI,OAAO,KAAK,CAAC,WAAW,CAAC,IAAI,KAAK,QAAQ,EAAE;QAC9F,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC;QACrC,IAAI,WAAW,KAAK,QAAQ;YAAE,WAAW,GAAG,EAAE,CAAC;KAC/C;SAAM;QACN,WAAW,GAAG,MAAM,CAAC;KACrB;IACD,8DAA8D;IAC9D,kDAAkD;IAClD,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,QAAQ,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC;IAEpG,QAAQ,SAAS,EAAE;QACnB,KAAK,KAAK;YACT,IAAI,KAAK,GAAG,CAAC;gBAAE,OAAO,KAAK,CAAC;YAC5B,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CACtC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,EAAE,CAC3E,CAAC;YACF,OAAO,GAAG,WAAW,KAAK,KAAK,CAAC,IAAI,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAClE,KAAK,KAAK;YACT,IAAI,KAAK,GAAG,CAAC;gBAAE,OAAO,KAAK,CAAC;YAC5B,OAAO,GAAG,WAAW,KAAK,KAAK,CAAC,IAAI,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;KACvG;IAED,IAAI,KAAK,CAAC,QAAQ,EAAE;QACnB,IAAI;YACH,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;YACrC,IAAI,OAAO,WAAW,KAAK,QAAQ;gBACjC,WAAW,KAAK,iBAAiB;gBACjC,WAAW,KAAK,WAAW,WAAW,GAAG,EAAE;gBAC5C,OAAO,GAAG,WAAW,IAAI,WAAW,GAAG,CAAC;aACxC;SACD;QAAC,MAAM,GAAE;KACV;IACD,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE;QACxB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC;YAAE,SAAS;QAChE,IAAI,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,WAAW,CAAC,EAAE;YACxC,GAAG,GAAG,KAAK,CAAC;YACZ,MAAM;SACN;QACD,IAAI,GAAG;YAAE,GAAG,IAAI,IAAI,CAAC;QACrB,IAAI,YAAY,GAAG,GAAG,CAAC;QACvB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC;YAAE,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACtE,GAAG,IAAI,GAAG,YAAY,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;KAC9D;IACD,IAAI,WAAW,IAAI,CAAC,GAAG,IAAI,WAAW,KAAK,MAAM;QAAE,OAAO,WAAW,CAAC;IACtE,OAAO,GAAG,WAAW,IAAI,GAAG,GAAG,CAAC;AACjC,CAAC;AAnED,8BAmEC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,OAAO,CAAC,CAAa,EAAE,CAAa;IACnD,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;QAC1B,OAAO,CAAC,GAAI,CAAY,CAAC;KACzB;IACD,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;QAC1B,OAAO,CAAC,CAAC,aAAa,CAAC,CAAW,CAAC,CAAC;KACpC;IACD,IAAI,OAAO,CAAC,KAAK,SAAS,EAAE;QAC3B,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACjC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAClC,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAG,CAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;YACzD,IAAI,UAAU;gBAAE,OAAO,UAAU,CAAC;SAClC;QACD,OAAO,CAAC,CAAC;KACT;IACD,IAAI,SAAS,IAAI,CAAC,EAAE;QACnB,OAAO,OAAO,CAAE,CAAuB,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;KAC5D;IACD,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;AACxD,CAAC;AArBD,0BAqBC;AAiBD,SAAgB,MAAM,CAAI,KAAU,EAAE,QAA+B;IACpE,IAAI,CAAC,QAAQ;QAAE,OAAQ,KAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrD,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAChE,CAAC;AAHD,wBAGC;AAMD;;;;;;;;;;EAUE;AACF,SAAgB,UAAU,CAAC,GAAW,EAAE,SAAiB,EAAE,KAAK,GAAG,CAAC;IACnE,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,OAAO,QAAQ,CAAC,MAAM,GAAG,KAAK,EAAE;QAC/B,MAAM,cAAc,GAAG,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,cAAc,IAAI,CAAC,EAAE;YACxB,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;YAC5C,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,cAAc,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;SACnD;aAAM;YACN,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnB,GAAG,GAAG,EAAE,CAAC;SACT;KACD;IACD,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACnB,OAAO,QAAQ,CAAC;AACjB,CAAC;AAdD,gCAcC;AAED;;GAEG;AACH,SAAgB,IAAI,CAAC,OAA6B,EAAE,GAAG,IAAS;IAC/D,IAAI,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACrB,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE;QACvB,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3B,GAAG,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;KACpB;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AARD,oBAQC;AAED;;;;GAIG;AACH,SAAgB,mBAAmB,CAAC,IAAY;IAC/C,OAAO,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;AAClE,CAAC;AAFD,kDAEC;AAED;;;;GAIG;AACH,SAAgB,SAAS,CAAC,IAAY;IACrC,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,EAAE;QACzC,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,UAAU,GAAG,EAAE,CAAC;QACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACrC,IAAI,CAAC,GAAG,SAAS,IAAI,EAAE,IAAI,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;gBACvF,UAAU,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,QAAQ,CAAC;gBAClD,SAAS,GAAG,CAAC,CAAC;aACd;SACD;QACD,UAAU,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACpC,OAAO,UAAU,CAAC;IACnB,CAAC,CAAC,CAAC;AACJ,CAAC;AAbD,8BAaC;AAED,SAAgB,OAAO,CAAI,GAAQ;IAClC,6CAA6C;IAC7C,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;QACxC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC9C,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;KACpC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAPD,0BAOC;AAED,SAAgB,aAAa,CAAI,GAAQ;IACxC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;IACjD,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;AACf,CAAC;AAHD,sCAGC;AAED,yDAAyD;AACzD,SAAgB,aAAa,CAAC,GAAQ,EAAE,GAAY,EAAE,GAAY;IACjE,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,GAAG,GAAG,CAAC,CAAC;IACrC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACtB,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,GAAG,GAAG;QAAE,GAAG,GAAG,GAAG,CAAC;IAC9C,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,GAAG,GAAG;QAAE,GAAG,GAAG,GAAG,CAAC;IAC9C,OAAO,GAAG,CAAC;AACZ,CAAC;AAND,sCAMC;AAED,SAAgB,iBAAiB,CAAC,UAAgC,EAAE;IACnE,MAAM,QAAQ,GAAG,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC;IACxC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAEhC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE;QACjC,IAAI,IAAI,GAAG,KAAK,CAAC;QACjB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;YAC/B,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;gBAC3B,IAAI,GAAG,IAAI,CAAC;gBACZ,MAAM;aACN;SACD;QAED,IAAI,CAAC,IAAI;YAAE,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;KACtC;AACF,CAAC;AAfD,8CAeC;AAED,SAAgB,SAAS,CAAC,GAAQ;IACjC,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC;IACxD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAChE,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;IACxD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;QACnC,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;KACjC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AARD,8BAQC;AAED,SAAgB,WAAW,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IAC1D,yFAAyF;IACzF,MAAM,CAAC,GAAe,EAAE,CAAC;IAEzB,SAAS;IACT,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;IACnB,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;IAEnB,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IACtB,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IACtB,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAErD,yEAAyE;IACzE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;QAAE,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;IAEvC,SAAS;IACT,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;QAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;QAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAEzC,SAAS;IACT,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;QAC5B,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAE3B,SAAS;QACT,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YAC5B,mCAAmC;YACnC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,OAAO,CAAC,CAAC;YAErC,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3B,MAAM,IAAI,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;YAE3C,wBAAwB;YACxB,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACzB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YAC1B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;YAEjC,IAAI,CAAC,GAAG,EAAE;gBAAE,EAAE,GAAG,CAAC,CAAC;YACnB,IAAI,CAAC,GAAG,EAAE;gBAAE,EAAE,GAAG,CAAC,CAAC;YAEnB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS;SACvB;KACD;IAED,SAAS;IACT,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAChB,CAAC;AA7CD,kCA6CC;AAED,SAAgB,SAAS,CAAC,IAAY;IACrC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;QAC5B,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;AACJ,CAAC;AAJD,8BAIC;AAED,iFAAiF;AACjF,SAAgB,aAAa,CAAC,GAAW;IACxC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC;IACjD,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC;AACtB,CAAC;AAHD,sCAGC;AAED,mGAAmG;AACnG,SAAgB,cAAc,CAAC,GAAc,EAAE,IAAgB;IAC9D,IAAI,EAAE,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;IACnB,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC/C,CAAC;AAHD,wCAGC;AAED,MAAa,QAAY,SAAQ,GAAc;IAC9C,GAAG,CAAC,GAAM;QACT,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC;IACb,CAAC;IACD,MAAM,CAAC,GAAM;QACZ,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAC1C,IAAI,QAAQ,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC3C,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC;IACb,CAAC;CACD;AAXD,4BAWC;AAED,0BAA0B;AACb,QAAA,KAAK,GAAG;IACpB,aAAa,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU;IAC1C,OAAO,EAAE,MAAM,EAAE,WAAW;IAC5B,OAAO,EAAE,SAAS,EAAE,iBAAiB;IACrC,aAAa,EAAE,SAAS,EAAE,UAAU;IACpC,SAAS,EAAE,SAAS,EAAE,SAAS;IAC/B,WAAW,EAAE,cAAc,EAAE,QAAQ;CACrC,CAAC"}
package/config/formats.ts CHANGED
@@ -86,10 +86,7 @@ export const Formats: FormatList = [
86
86
 
87
87
  mod: 'gen8',
88
88
  ruleset: ['Standard', 'Dynamax Clause'],
89
- banlist: [
90
- 'Uber', 'AG', 'Arena Trap', 'Moody', 'Power Construct', 'Sand Veil', 'Shadow Tag', 'Snow Cloak',
91
- 'Bright Powder', 'King\'s Rock', 'Lax Incense', 'Baton Pass',
92
- ],
89
+ banlist: ['Uber', 'AG', 'Arena Trap', 'Moody', 'Power Construct', 'Sand Veil', 'Shadow Tag', 'Snow Cloak', 'King\'s Rock', 'Baton Pass'],
93
90
  },
94
91
  {
95
92
  name: "[Gen 8] OU (Blitz)",
@@ -167,8 +164,8 @@ export const Formats: FormatList = [
167
164
  mod: 'gen8',
168
165
  ruleset: ['Little Cup', 'Standard', 'Dynamax Clause'],
169
166
  banlist: [
170
- 'Corsola-Galar', 'Cutiefly', 'Drifloon', 'Gastly', 'Gothita', 'Rufflet', 'Scraggy', 'Scyther', 'Sneasel', 'Swirlix', 'Tangela', 'Vullaby', 'Vulpix-Alola', 'Woobat', 'Zigzagoon-Base',
171
- 'Chlorophyll', 'Moody', 'Baton Pass', 'Sticky Web',
167
+ 'Corsola-Galar', 'Cutiefly', 'Drifloon', 'Gastly', 'Gothita', 'Rufflet', 'Scraggy', 'Scyther', 'Sneasel', 'Swirlix',
168
+ 'Tangela', 'Vullaby', 'Vulpix-Alola', 'Woobat', 'Zigzagoon-Base', 'Chlorophyll', 'Moody', 'Baton Pass', 'Sticky Web',
172
169
  ],
173
170
  },
174
171
  {
@@ -186,8 +183,8 @@ export const Formats: FormatList = [
186
183
  'Blaziken', 'Calyrex-Ice', 'Calyrex-Shadow', 'Dialga', 'Dracovish', 'Eternatus', 'Genesect', 'Giratina', 'Giratina-Origin', 'Groudon', 'Ho-Oh',
187
184
  'Kartana', 'Kyogre', 'Kyurem-Black', 'Kyurem-White', 'Landorus-Base', 'Lugia', 'Lunala', 'Magearna', 'Marshadow', 'Mewtwo', 'Naganadel',
188
185
  'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Palkia', 'Pheromosa', 'Rayquaza', 'Reshiram', 'Solgaleo', 'Urshifu-Base', 'Xerneas', 'Yveltal',
189
- 'Zacian', 'Zacian-Crowned', 'Zamazenta', 'Zamazenta-Crowned', 'Zekrom', 'Zygarde-Base', 'Moody', 'Power Construct', 'Shadow Tag', 'Bright Powder',
190
- 'Damp Rock', 'Focus Band', 'King\'s Rock', 'Lax Incense', 'Quick Claw', 'Smooth Rock', 'Terrain Extender', 'Acupressure', 'Baton Pass',
186
+ 'Zacian', 'Zacian-Crowned', 'Zamazenta', 'Zamazenta-Crowned', 'Zekrom', 'Zygarde-Base', 'Moody', 'Power Construct', 'Shadow Tag', 'Damp Rock',
187
+ 'Focus Band', 'King\'s Rock', 'Quick Claw', 'Smooth Rock', 'Terrain Extender', 'Acupressure', 'Baton Pass',
191
188
  ],
192
189
  },
193
190
  {
@@ -290,6 +287,15 @@ export const Formats: FormatList = [
290
287
  ruleset: ['Flat Rules', '!! Adjust Level = 50', 'Min Source Gen = 8', 'Limit Two Restricted'],
291
288
  restricted: ['Restricted Legendary'],
292
289
  },
290
+ {
291
+ name: "[Gen 8] Battle Stadium Singles Series 13",
292
+
293
+ mod: 'gen8',
294
+ searchShow: false,
295
+ ruleset: ['Flat Rules', '!! Adjust Level = 50', 'Min Source Gen = 8'],
296
+ banlist: ['Eternatus-Eternamax'],
297
+ unbanlist: ['Mythical', 'Restricted Legendary'],
298
+ },
293
299
  {
294
300
  name: "[Gen 8] I Choose 'Chu!",
295
301
  threads: [
@@ -386,6 +392,16 @@ export const Formats: FormatList = [
386
392
  ruleset: ['Flat Rules', '!! Adjust Level = 50', 'Min Source Gen = 8', 'VGC Timer', 'Limit Two Restricted'],
387
393
  restricted: ['Restricted Legendary'],
388
394
  },
395
+ {
396
+ name: "[Gen 8] Battle Stadium Doubles Series 13",
397
+
398
+ mod: 'gen8',
399
+ gameType: 'doubles',
400
+ searchShow: false,
401
+ ruleset: ['Flat Rules', '!! Adjust Level = 50', 'Min Source Gen = 8', 'VGC Timer'],
402
+ banlist: ['Eternatus-Eternamax'],
403
+ unbanlist: ['Mythical', 'Restricted Legendary'],
404
+ },
389
405
  {
390
406
  name: "[Gen 8] VGC 2021",
391
407
 
@@ -635,10 +651,10 @@ export const Formats: FormatList = [
635
651
  ],
636
652
 
637
653
  mod: 'gen8',
638
- ruleset: ['Standard', 'Re-Evolution Mod', 'Evasion Abilities Clause', 'Dynamax Clause'],
654
+ ruleset: ['Standard OMs', 'Re-Evolution Mod', 'Evasion Abilities Clause', 'Sleep Clause Mod'],
639
655
  banlist: [
640
- 'Darmanitan-Galar', 'Gyarados', 'Lunala', 'Milotic', 'Naganadel', 'Solgaleo', 'Urshifu-Base', 'Volcarona',
641
- 'Zacian-Crowned', 'Arena Trap', 'Moody', 'Shadow Tag', 'Bright Powder', 'King\'s Rock', 'Lax Incense', 'Baton Pass',
656
+ 'Calyrex-Shadow', 'Darmanitan-Galar', 'Gyarados', 'Lunala', 'Milotic', 'Naganadel', 'Solgaleo', 'Slowking-Galar', 'Urshifu-Base',
657
+ 'Volcarona', 'Zacian-Crowned', 'Arena Trap', 'Moody', 'Shadow Tag', 'Bright Powder', 'King\'s Rock', 'Lax Incense', 'Baton Pass',
642
658
  ],
643
659
  },
644
660
  {
@@ -649,21 +665,14 @@ export const Formats: FormatList = [
649
665
  ],
650
666
 
651
667
  mod: 'gen8',
652
- ruleset: ['Standard', 'Dynamax Clause'],
668
+ ruleset: ['Standard OMs', 'Category Swap Mod', 'Sleep Clause Mod'],
653
669
  banlist: [
654
- 'Calyrex-Ice', 'Calyrex-Shadow', 'Darmanitan-Galar', 'Dialga', 'Dracovish', 'Eternatus', 'Genesect', 'Giratina', 'Giratina-Origin', 'Groudon',
655
- 'Ho-Oh', 'Kyogre', 'Kyurem', 'Kyurem-Black', 'Kyurem-White', 'Landorus-Base', 'Lugia', 'Lunala', 'Mewtwo', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane',
656
- 'Palkia', 'Pheromosa', 'Rayquaza', 'Reshiram', 'Solgaleo', 'Xerneas', 'Yveltal', 'Zacian', 'Zacian-Crowned', 'Zamazenta', 'Zamazenta-Crowned',
657
- 'Zekrom', 'Arena Trap', 'Moody', 'Power Construct', 'Shadow Tag', 'King\'s Rock', 'Baton Pass', 'Draco Meteor', 'Overheat',
658
- ],
659
- onModifyMove(move) {
660
- if (move.category === 'Status') return;
661
- if (move.category === 'Special') {
662
- move.category = 'Physical';
663
- } else {
664
- move.category = 'Special';
665
- }
666
- },
670
+ 'Calyrex-Ice', 'Calyrex-Shadow', 'Darmanitan-Galar', 'Dialga', 'Dracovish', 'Dragapult', 'Eternatus', 'Genesect', 'Giratina',
671
+ 'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kyogre', 'Kyurem', 'Kyurem-Black', 'Kyurem-White', 'Landorus-Base', 'Lugia', 'Lunala',
672
+ 'Magearna', 'Mewtwo', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Nidoking', 'Palkia', 'Pheromosa', 'Rayquaza', 'Reshiram',
673
+ 'Solgaleo', 'Xerneas', 'Yveltal', 'Zacian', 'Zacian-Crowned', 'Zamazenta', 'Zamazenta-Crowned', 'Zekrom', 'Arena Trap', 'Moody',
674
+ 'Power Construct', 'Shadow Tag', 'King\'s Rock', 'Baton Pass', 'Draco Meteor', 'Overheat',
675
+ ],
667
676
  },
668
677
 
669
678
  // Other Metagames
@@ -700,16 +709,16 @@ export const Formats: FormatList = [
700
709
  ],
701
710
 
702
711
  mod: 'gen8',
703
- ruleset: ['Standard', '!Obtainable Abilities', '2 Ability Clause', 'Dynamax Clause', 'Sleep Moves Clause', '!Sleep Clause Mod'],
712
+ ruleset: ['Standard OMs', '!Obtainable Abilities', '2 Ability Clause', 'Sleep Moves Clause'],
704
713
  banlist: [
705
- 'Archeops', 'Blacephalon', 'Buzzwole', 'Calyrex-Ice', 'Calyrex-Shadow', 'Dialga', 'Dracovish', 'Dragapult', 'Dragonite', 'Eternatus', 'Gengar',
706
- 'Giratina', 'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kartana', 'Keldeo', 'Kommo-o', 'Kyogre', 'Kyurem', 'Kyurem-Black', 'Kyurem-White',
714
+ 'Archeops', 'Blacephalon', 'Buzzwole', 'Calyrex-Ice', 'Calyrex-Shadow', 'Dialga', 'Dracovish', 'Dragapult', 'Dragonite', 'Eternatus',
715
+ 'Gengar', 'Giratina', 'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kartana', 'Keldeo', 'Kyogre', 'Kyurem', 'Kyurem-Black', 'Kyurem-White',
707
716
  'Lugia', 'Lunala', 'Magearna', 'Marshadow', 'Melmetal', 'Mewtwo', 'Naganadel', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Noivern',
708
717
  'Palkia', 'Pheromosa', 'Rayquaza', 'Regigigas', 'Reshiram', 'Shedinja', 'Solgaleo', 'Spectrier', 'Urshifu', 'Urshifu-Rapid-Strike',
709
- 'Victini', 'Weavile', 'Xerneas', 'Yveltal', 'Zacian', 'Zacian-Crowned', 'Zamazenta-Base', 'Zekrom', 'Zeraora', 'Zygarde-Base',
710
- 'Arena Trap', 'Comatose', 'Contrary', 'Fluffy', 'Fur Coat', 'Gorilla Tactics', 'Huge Power', 'Ice Scales', 'Illusion', 'Imposter',
711
- 'Innards Out', 'Intrepid Sword', 'Libero', 'Magnet Pull', 'Moody', 'Neutralizing Gas', 'Parental Bond', 'Poison Heal', 'Protean',
712
- 'Pure Power', 'Shadow Tag', 'Simple', 'Stakeout', 'Speed Boost', 'Water Bubble', 'Wonder Guard', 'King\'s Rock', 'Baton Pass',
718
+ 'Victini', 'Weavile', 'Xerneas', 'Yveltal', 'Zacian', 'Zacian-Crowned', 'Zamazenta-Base', 'Zekrom', 'Zeraora', 'Zygarde-Base', 'Arena Trap',
719
+ 'Comatose', 'Contrary', 'Fluffy', 'Fur Coat', 'Gorilla Tactics', 'Huge Power', 'Ice Scales', 'Illusion', 'Imposter', 'Innards Out',
720
+ 'Intrepid Sword', 'Libero', 'Magic Bounce', 'Magnet Pull', 'Moody', 'Neutralizing Gas', 'Parental Bond', 'Poison Heal', 'Protean',
721
+ 'Pure Power', 'Shadow Tag', 'Simple', 'Stakeout', 'Speed Boost', 'Unburden', 'Water Bubble', 'Wonder Guard', 'King\'s Rock', 'Baton Pass',
713
722
  ],
714
723
  },
715
724
  {
@@ -721,7 +730,7 @@ export const Formats: FormatList = [
721
730
  ],
722
731
 
723
732
  mod: 'mixandmega',
724
- ruleset: ['Standard', 'Overflow Stat Mod', 'Dynamax Clause'],
733
+ ruleset: ['Standard OMs', 'Sleep Clause Mod'],
725
734
  banlist: [
726
735
  'Calyrex-Shadow', 'Eternatus', 'Kyogre', 'Zacian',
727
736
  'Beedrillite', 'Blazikenite', 'Gengarite', 'Kangaskhanite', 'Mawilite', 'Medichamite', 'Pidgeotite',
@@ -790,7 +799,7 @@ export const Formats: FormatList = [
790
799
  ],
791
800
 
792
801
  mod: 'gen8',
793
- ruleset: ['Standard', 'STABmons Move Legality', 'Dynamax Clause', 'Sleep Moves Clause', '!Sleep Clause Mod'],
802
+ ruleset: ['Standard OMs', 'STABmons Move Legality', 'Sleep Moves Clause'],
794
803
  banlist: [
795
804
  'Aegislash', 'Blacephalon', 'Calyrex-Ice', 'Calyrex-Shadow', 'Darmanitan-Galar', 'Dialga', 'Dracovish', 'Dragapult', 'Dragonite', 'Eternatus',
796
805
  'Genesect', 'Garchomp', 'Giratina', 'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kartana', 'Kyogre', 'Kyurem-Black', 'Kyurem-White', 'Landorus',
@@ -814,7 +823,7 @@ export const Formats: FormatList = [
814
823
  ],
815
824
 
816
825
  mod: 'gen8',
817
- ruleset: ['Not Fully Evolved', 'Standard', 'Dynamax Clause'],
826
+ ruleset: ['Standard OMs', 'Not Fully Evolved', 'Sleep Clause Mod'],
818
827
  banlist: [
819
828
  'Chansey', 'Doublade', 'Golbat', 'Haunter', 'Kadabra', 'Magmar', 'Magneton', 'Mr. Mime-Galar', 'Pawniard', 'Pikachu',
820
829
  'Porygon2', 'Rhydon', 'Scyther', 'Sneasel', 'Type: Null', 'Vulpix-Base', 'Arena Trap', 'Shadow Tag', 'Baton Pass',
@@ -828,7 +837,7 @@ export const Formats: FormatList = [
828
837
  ],
829
838
 
830
839
  mod: 'gen8',
831
- ruleset: ['Standard', 'Dynamax Clause', 'Sleep Moves Clause'],
840
+ ruleset: ['Standard OMs', 'Sleep Moves Clause'],
832
841
  banlist: [
833
842
  'Blissey', 'Calyrex-Shadow', 'Chansey', 'Crawdaunt', 'Dragapult', 'Eternatus', 'Hawlucha', 'Marowak-Alola', 'Melmetal', 'Nidoking',
834
843
  'Nidoqueen', 'Pikachu', 'Toxapex', 'Xerneas', 'Zacian', 'Zacian-Crowned', 'Uber > 1', 'AG ++ Uber > 1', 'Arena Trap', 'Huge Power',
@@ -909,6 +918,10 @@ export const Formats: FormatList = [
909
918
  'Decorate', 'Final Gambit', 'Flatter', 'Floral Healing', 'Flower Shield', 'Follow Me', 'Heal Pulse', 'Rage Powder', 'Swagger',
910
919
  ],
911
920
  },
921
+
922
+ // Brilliant Diamond/Shining Pearl
923
+ ///////////////////////////////////////////////////////////////////
924
+
912
925
  {
913
926
  section: "BD/SP",
914
927
  column: 2,
@@ -934,10 +947,7 @@ export const Formats: FormatList = [
934
947
 
935
948
  mod: 'gen8bdsp',
936
949
  ruleset: ['Standard'],
937
- banlist: [
938
- 'Uber', 'Arena Trap', 'Drizzle', 'Moody', 'Sand Veil', 'Shadow Tag', 'Snow Cloak',
939
- 'Bright Powder', 'King\'s Rock', 'Lax Incense', 'Razor Fang', 'Baton Pass',
940
- ],
950
+ banlist: ['Uber', 'Arena Trap', 'Drizzle', 'Moody', 'Sand Veil', 'Shadow Tag', 'Snow Cloak', 'King\'s Rock', 'Razor Fang', 'Baton Pass'],
941
951
  },
942
952
  {
943
953
  name: "[Gen 8 BDSP] Ubers",
@@ -946,6 +956,7 @@ export const Formats: FormatList = [
946
956
  ],
947
957
 
948
958
  mod: 'gen8bdsp',
959
+ searchShow: false,
949
960
  ruleset: ['Standard'],
950
961
  banlist: ['AG', 'Baton Pass'],
951
962
  },
@@ -956,6 +967,7 @@ export const Formats: FormatList = [
956
967
  ],
957
968
 
958
969
  mod: 'gen8bdsp',
970
+ searchShow: false,
959
971
  ruleset: ['[Gen 8 BDSP] OU'],
960
972
  banlist: ['OU', 'UUBL'],
961
973
  },
@@ -966,6 +978,7 @@ export const Formats: FormatList = [
966
978
  ],
967
979
 
968
980
  mod: 'gen8bdsp',
981
+ searchShow: false,
969
982
  ruleset: ['[Gen 8 BDSP] UU'],
970
983
  banlist: ['UU', 'RUBL', 'Drought'],
971
984
  },
@@ -976,6 +989,7 @@ export const Formats: FormatList = [
976
989
  ],
977
990
 
978
991
  mod: 'gen8bdsp',
992
+ searchShow: false,
979
993
  ruleset: ['[Gen 8 BDSP] RU'],
980
994
  banlist: ['RU', 'NUBL', 'Damp Rock', 'Heat Rock'],
981
995
  },
@@ -986,6 +1000,7 @@ export const Formats: FormatList = [
986
1000
  ],
987
1001
 
988
1002
  mod: 'gen8bdsp',
1003
+ searchShow: false,
989
1004
  ruleset: ['[Gen 8 BDSP] NU'],
990
1005
  banlist: ['NU', 'PUBL'],
991
1006
  },
@@ -996,6 +1011,7 @@ export const Formats: FormatList = [
996
1011
  ],
997
1012
 
998
1013
  mod: 'gen8bdsp',
1014
+ searchShow: false,
999
1015
  ruleset: ['Little Cup', 'Standard'],
1000
1016
  banlist: ['Gligar', 'Meditite', 'Misdreavus', 'Munchlax', 'Murkrow', 'Scyther', 'Sneasel', 'Tangela', 'Vulpix', 'Yanma', 'Moody', 'Baton Pass', 'Sticky Web'],
1001
1017
  },
@@ -1006,6 +1022,7 @@ export const Formats: FormatList = [
1006
1022
  ],
1007
1023
 
1008
1024
  mod: 'gen8bdsp',
1025
+ searchShow: false,
1009
1026
  ruleset: ['[Gen 8 BDSP] OU', 'Same Type Clause'],
1010
1027
  },
1011
1028
  {
@@ -1018,16 +1035,6 @@ export const Formats: FormatList = [
1018
1035
  searchShow: false,
1019
1036
  ruleset: ['[Gen 8 BDSP] OU', '+CAP'],
1020
1037
  },
1021
- {
1022
- name: "[Gen 8 BDSP] 3v3 Singles",
1023
- threads: [
1024
- `&bullet; <a href="https://www.smogon.com/forums/threads/3695092/">BDSP 3v3 Singles</a>`,
1025
- ],
1026
-
1027
- mod: 'gen8bdsp',
1028
- searchShow: false,
1029
- ruleset: ['Flat Rules', 'Min Source Gen = 8'],
1030
- },
1031
1038
  {
1032
1039
  name: "[Gen 8 BDSP] Doubles OU",
1033
1040
  threads: [
@@ -1039,16 +1046,10 @@ export const Formats: FormatList = [
1039
1046
  ruleset: ['Standard Doubles'],
1040
1047
  banlist: ['DUber', 'Dark Void'],
1041
1048
  },
1042
- {
1043
- name: "[Gen 8 BDSP] Battle Festival Doubles",
1044
- threads: [
1045
- `&bullet; <a href="https://www.smogon.com/forums/threads/3694269/">Battle Festival Doubles</a>`,
1046
- ],
1047
1049
 
1048
- mod: 'gen8bdsp',
1049
- gameType: 'doubles',
1050
- ruleset: ['Flat Rules', 'Min Source Gen = 8'],
1051
- },
1050
+ // Challengeable OMs
1051
+ ///////////////////////////////////////////////////////////////////
1052
+
1052
1053
  {
1053
1054
  section: "Challengeable OMs",
1054
1055
  column: 2,
@@ -1062,7 +1063,7 @@ export const Formats: FormatList = [
1062
1063
 
1063
1064
  mod: 'gen8',
1064
1065
  searchShow: false,
1065
- ruleset: ['Standard', 'Dynamax Clause', 'Camomons Mod'],
1066
+ ruleset: ['Standard OMs', 'Camomons Mod', 'Sleep Clause Mod'],
1066
1067
  banlist: [
1067
1068
  'Calyrex-Ice', 'Calyrex-Shadow', 'Darmanitan-Galar', 'Dialga', 'Dracovish', 'Dragonite', 'Eternatus', 'Genesect', 'Giratina', 'Giratina-Origin',
1068
1069
  'Groudon', 'Ho-Oh', 'Hydreigon', 'Kartana', 'Kyogre', 'Kyurem', 'Kyurem-Black', 'Kyurem-White', 'Landorus-Base', 'Lugia', 'Lunala', 'Marshadow',
@@ -1080,7 +1081,7 @@ export const Formats: FormatList = [
1080
1081
 
1081
1082
  mod: 'gen8',
1082
1083
  searchShow: false,
1083
- ruleset: ['Standard', 'Overflow Stat Mod', 'Dynamax Clause', '2 Ability Clause'],
1084
+ ruleset: ['Standard OMs', '2 Ability Clause', 'Sleep Clause Mod'],
1084
1085
  banlist: ['Corsola-Galar', 'Sneasel', 'Type: Null', 'Arena Trap', 'Ice Scales', 'Moody', 'King\'s Rock', 'Baton Pass'],
1085
1086
  restricted: ['Chansey', 'Lunala', 'Shedinja', 'Solgaleo', 'Gorilla Tactics', 'Huge Power', 'Pure Power', 'Shadow Tag'],
1086
1087
  onValidateTeam(team) {
@@ -1217,7 +1218,7 @@ export const Formats: FormatList = [
1217
1218
 
1218
1219
  mod: 'gen8',
1219
1220
  searchShow: false,
1220
- ruleset: ['Standard', '!Sleep Clause Mod', 'Sleep Moves Clause', '2 Ability Clause', 'Dynamax Clause'],
1221
+ ruleset: ['Standard OMs', '2 Ability Clause', 'Sleep Moves Clause'],
1221
1222
  banlist: [
1222
1223
  'Blacephalon', 'Blaziken', 'Butterfree', 'Calyrex-Ice', 'Calyrex-Shadow', 'Chansey', 'Combusken', 'Cresselia', 'Darmanitan-Galar', 'Dialga',
1223
1224
  'Dracovish', 'Eternatus', 'Giratina', 'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kartana', 'Kyogre', 'Kyurem-Black', 'Kyurem-White', 'Lugia',
@@ -1400,7 +1401,7 @@ export const Formats: FormatList = [
1400
1401
 
1401
1402
  mod: 'linked',
1402
1403
  searchShow: false,
1403
- ruleset: ['Standard', 'Dynamax Clause'],
1404
+ ruleset: ['Standard OMs', 'Sleep Clause Mod'],
1404
1405
  banlist: [
1405
1406
  'Calyrex-Ice', 'Calyrex-Shadow', 'Cinderace', 'Cloyster', 'Darmanitan-Galar', 'Dialga', 'Dracovish', 'Eternatus', 'Genesect', 'Giratina',
1406
1407
  'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kartana', 'Kyogre', 'Kyurem', 'Kyurem-Black', 'Kyurem-White', 'Landorus-Base', 'Lugia', 'Lunala',
@@ -1433,7 +1434,7 @@ export const Formats: FormatList = [
1433
1434
 
1434
1435
  mod: 'gen8',
1435
1436
  searchShow: false,
1436
- ruleset: ['Standard', 'Dynamax Clause', '2 Ability Clause', 'Sleep Moves Clause', '!Sleep Clause Mod'],
1437
+ ruleset: ['Standard OMs', '2 Ability Clause', 'Sleep Moves Clause'],
1437
1438
  banlist: [
1438
1439
  'Calyrex-Ice', 'Calyrex-Shadow', 'Cinderace', 'Darmanitan-Galar', 'Dialga', 'Dracovish', 'Dragonite', 'Eternatus',
1439
1440
  'Genesect', 'Giratina', 'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kartana', 'Kyogre', 'Kyurem-Black', 'Kyurem-White',
@@ -1623,7 +1624,7 @@ export const Formats: FormatList = [
1623
1624
 
1624
1625
  mod: 'gen8',
1625
1626
  searchShow: false,
1626
- ruleset: ['Standard', 'Dynamax Clause'],
1627
+ ruleset: ['Standard OMs', 'Sleep Clause Mod'],
1627
1628
  banlist: [
1628
1629
  'Blissey', 'Calyrex-Ice', 'Calyrex-Shadow', 'Chansey', 'Cloyster', 'Dialga', 'Eternatus', 'Genesect', 'Giratina',
1629
1630
  'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kyogre', 'Kyurem-Black', 'Kyurem-White', 'Landorus-Base', 'Lugia', 'Lunala',
@@ -1677,7 +1678,7 @@ export const Formats: FormatList = [
1677
1678
  ],
1678
1679
  mod: 'pokebilities',
1679
1680
  searchShow: false,
1680
- ruleset: ['Standard', 'Dynamax Clause'],
1681
+ ruleset: ['Standard OMs', 'Sleep Clause Mod'],
1681
1682
  banlist: [
1682
1683
  'Calyrex-Ice', 'Calyrex-Shadow', 'Cinderace', 'Conkeldurr', 'Darmanitan-Galar', 'Dialga', 'Dracovish', 'Dracozolt',
1683
1684
  'Eternatus', 'Excadrill', 'Genesect', 'Giratina', 'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kyogre', 'Kyurem-Black',
@@ -1716,10 +1717,26 @@ export const Formats: FormatList = [
1716
1717
  .filter(ability => ability !== pokemon.ability);
1717
1718
  }
1718
1719
  },
1720
+ onBeforeSwitchIn(pokemon) {
1721
+ // Abilities that must be applied before both sides trigger onSwitchIn to correctly
1722
+ // handle switch-in ability-to-ability interactions, e.g. Intimidate counters
1723
+ const neededBeforeSwitchInIDs = [
1724
+ 'clearbody', 'competitive', 'contrary', 'defiant', 'fullmetalbody', 'hypercutter', 'innerfocus',
1725
+ 'mirrorarmor', 'oblivious', 'owntempo', 'rattled', 'scrappy', 'simple', 'whitesmoke',
1726
+ ];
1727
+ if (pokemon.m.innates) {
1728
+ for (const innate of pokemon.m.innates) {
1729
+ if (!neededBeforeSwitchInIDs.includes(innate)) continue;
1730
+ if (pokemon.hasAbility(innate)) continue;
1731
+ pokemon.addVolatile("ability:" + innate, pokemon);
1732
+ }
1733
+ }
1734
+ },
1719
1735
  onSwitchInPriority: 2,
1720
1736
  onSwitchIn(pokemon) {
1721
1737
  if (pokemon.m.innates) {
1722
1738
  for (const innate of pokemon.m.innates) {
1739
+ if (pokemon.hasAbility(innate)) continue;
1723
1740
  pokemon.addVolatile("ability:" + innate, pokemon);
1724
1741
  }
1725
1742
  }
@@ -1762,7 +1779,7 @@ export const Formats: FormatList = [
1762
1779
 
1763
1780
  mod: 'sharedpower',
1764
1781
  searchShow: false,
1765
- ruleset: ['Standard', 'Dynamax Clause'],
1782
+ ruleset: ['Standard OMs', 'Sleep Clause Mod'],
1766
1783
  banlist: [
1767
1784
  'Calyrex-Ice', 'Calyrex-Shadow', 'Darmanitan-Galar', 'Dialga', 'Dracovish', 'Eternatus', 'Genesect', 'Giratina',
1768
1785
  'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kyogre', 'Kyurem-Black', 'Kyurem-White', 'Lugia', 'Lunala', 'Magearna',
@@ -1826,7 +1843,7 @@ export const Formats: FormatList = [
1826
1843
  searchShow: false,
1827
1844
  challengeShow: false,
1828
1845
  tournamentShow: false,
1829
- ruleset: ['Standard', 'Dynamax Clause'],
1846
+ ruleset: ['Standard OMs', 'Sleep Clause Mod'],
1830
1847
  banlist: [
1831
1848
  'Calyrex-Ice', 'Calyrex-Shadow', 'Darmanitan-Galar', 'Dialga', 'Dracovish', 'Dragapult', 'Eternatus', 'Kyurem-Black', 'Kyurem-White', 'Giratina',
1832
1849
  'Giratina-Origin', 'Genesect', 'Groudon', 'Ho-Oh', 'Kartana', 'Kyogre', 'Lugia', 'Lunala', 'Magearna', 'Marowak-Alola', 'Marshadow', 'Melmetal',
@@ -1933,7 +1950,7 @@ export const Formats: FormatList = [
1933
1950
 
1934
1951
  mod: 'gen8',
1935
1952
  searchShow: false,
1936
- ruleset: ['Standard', '!OHKO Clause', 'Picked Team Size = 6', 'Adjust Level = 100'],
1953
+ ruleset: ['Standard OMs', 'Sleep Clause Mod', '!OHKO Clause', 'Picked Team Size = 6', 'Adjust Level = 100'],
1937
1954
  banlist: [
1938
1955
  'Sandshrew-Alola', 'Shedinja', 'Infiltrator', 'Magic Guard', 'Choice Scarf',
1939
1956
  'Explosion', 'Final Gambit', 'Healing Wish', 'Lunar Dance', 'Magic Room', 'Memento', 'Misty Explosion', 'Self-Destruct',
@@ -2552,7 +2569,7 @@ export const Formats: FormatList = [
2552
2569
  ],
2553
2570
 
2554
2571
  mod: 'gen7mixandmega',
2555
- ruleset: ['Standard', 'Mega Rayquaza Clause', 'Overflow Stat Mod'],
2572
+ ruleset: ['Standard OMs', 'Mega Rayquaza Clause', 'Sleep Clause Mod'],
2556
2573
  banlist: ['Shadow Tag', 'Gengarite', 'Baton Pass', 'Electrify'],
2557
2574
  restricted: [
2558
2575
  'Arceus', 'Deoxys', 'Dialga', 'Dragonite', 'Giratina', 'Groudon', 'Ho-Oh', 'Kyogre', 'Kyurem', 'Landorus-Therian', 'Lugia',
@@ -3332,6 +3349,7 @@ export const Formats: FormatList = [
3332
3349
  mod: 'gen5',
3333
3350
  searchShow: false,
3334
3351
  ruleset: ['[Gen 5] OU', 'Same Type Clause', '!Gems Clause'],
3352
+ banlist: ['Latios'],
3335
3353
  },
3336
3354
  {
3337
3355
  name: "[Gen 5] 1v1",
package/data/pokedex.ts CHANGED
@@ -16536,7 +16536,7 @@ export const Pokedex: {[speciesid: string]: SpeciesData} = {
16536
16536
  num: -6,
16537
16537
  name: "Pyroak",
16538
16538
  types: ["Fire", "Grass"],
16539
- baseStats: {hp: 120, atk: 70, def: 105, spa: 75, spd: 90, spe: 60},
16539
+ baseStats: {hp: 120, atk: 70, def: 105, spa: 70, spd: 65, spe: 60},
16540
16540
  abilities: {0: "Rock Head", 1: "Battle Armor", H: "Contrary"},
16541
16541
  heightm: 2.1,
16542
16542
  weightkg: 168,
package/data/rulesets.ts CHANGED
@@ -14,7 +14,7 @@ export const Rulesets: {[k: string]: FormatData} = {
14
14
  name: 'Standard',
15
15
  desc: "The standard ruleset for all offical Smogon singles tiers (Ubers, OU, etc.)",
16
16
  ruleset: [
17
- 'Obtainable', 'Team Preview', 'Sleep Clause Mod', 'Species Clause', 'Nickname Clause', 'OHKO Clause', 'Evasion Moves Clause', 'Endless Battle Clause', 'HP Percentage Mod', 'Cancel Mod',
17
+ 'Obtainable', 'Team Preview', 'Sleep Clause Mod', 'Species Clause', 'Nickname Clause', 'OHKO Clause', 'Evasion Items Clause', 'Evasion Moves Clause', 'Endless Battle Clause', 'HP Percentage Mod', 'Cancel Mod',
18
18
  ],
19
19
  },
20
20
  standardnext: {
@@ -71,6 +71,14 @@ export const Rulesets: {[k: string]: FormatData} = {
71
71
  'Obtainable', 'Team Preview', 'Species Clause', 'Nickname Clause', 'OHKO Clause', 'Evasion Moves Clause', 'Gravity Sleep Clause', 'Endless Battle Clause', 'HP Percentage Mod', 'Cancel Mod',
72
72
  ],
73
73
  },
74
+ standardoms: {
75
+ effectType: 'ValidatorRule',
76
+ name: 'Standard OMs',
77
+ desc: "The standard ruleset for all Smogon OMs (Almost Any Ability, STABmons, etc.)",
78
+ ruleset: [
79
+ 'Obtainable', 'Team Preview', 'Species Clause', 'Nickname Clause', 'OHKO Clause', 'Evasion Moves Clause', 'Endless Battle Clause', 'Dynamax Clause', 'HP Percentage Mod', 'Cancel Mod', 'Overflow Stat Mod',
80
+ ],
81
+ },
74
82
  standardnatdex: {
75
83
  effectType: 'ValidatorRule',
76
84
  name: 'Standard NatDex',
@@ -643,6 +651,15 @@ export const Rulesets: {[k: string]: FormatData} = {
643
651
  return problems;
644
652
  },
645
653
  },
654
+ evasionclause: {
655
+ effectType: 'ValidatorRule',
656
+ name: 'Evasion Clause',
657
+ desc: "Bans abilities, items, and moves that boost Evasion",
658
+ ruleset: ['Evasion Abilities Clause', 'Evasion Items Clause', 'Evasion Moves Clause'],
659
+ onBegin() {
660
+ this.add('rule', 'Evasion Clause: Evasion abilities, items, and moves are banned');
661
+ },
662
+ },
646
663
  evasionabilitiesclause: {
647
664
  effectType: 'ValidatorRule',
648
665
  name: 'Evasion Abilities Clause',
@@ -652,6 +669,15 @@ export const Rulesets: {[k: string]: FormatData} = {
652
669
  this.add('rule', 'Evasion Abilities Clause: Evasion abilities are banned');
653
670
  },
654
671
  },
672
+ evasionitemsclause: {
673
+ effectType: 'ValidatorRule',
674
+ name: 'Evasion Items Clause',
675
+ desc: "Bans moves that lower the accuracy of moves used against the user",
676
+ banlist: ['Bright Powder', 'Lax Incense'],
677
+ onBegin() {
678
+ this.add('rule', 'Evasion Items Clause: Evasion items are banned');
679
+ },
680
+ },
655
681
  evasionmovesclause: {
656
682
  effectType: 'ValidatorRule',
657
683
  name: 'Evasion Moves Clause',
@@ -1870,7 +1896,6 @@ export const Rulesets: {[k: string]: FormatData} = {
1870
1896
  effectType: "Rule",
1871
1897
  name: "Re-Evolution Mod",
1872
1898
  desc: "Pok&eacute;mon gain the stat changes they would gain from evolving again.",
1873
- ruleset: ['Overflow Stat Mod'],
1874
1899
  onBegin() {
1875
1900
  this.add('rule', 'Re-Evolution Mod: Pok\u00e9mon gain the boosts they would gain from evolving again');
1876
1901
  },
@@ -1979,4 +2004,96 @@ export const Rulesets: {[k: string]: FormatData} = {
1979
2004
  }
1980
2005
  },
1981
2006
  },
2007
+ categoryswapmod: {
2008
+ effectType: 'Rule',
2009
+ name: 'Category Swap Mod',
2010
+ desc: `All physical moves become special, and all special moves become physical.`,
2011
+ onBegin() {
2012
+ this.add('rule', 'Category Swap Mod: All physical moves become special, and vice versa');
2013
+ },
2014
+ onModifyMove(move, pokemon, target) {
2015
+ if (move.category === "Status") return;
2016
+
2017
+ if (move.category === "Physical") {
2018
+ move.category = "Special";
2019
+ } else if (move.category === "Special") {
2020
+ move.category = "Physical";
2021
+ }
2022
+
2023
+ switch (move.id) {
2024
+ case 'doomdesire': {
2025
+ move.onTry = function (source, subtarget) {
2026
+ if (!subtarget.side.addSlotCondition(subtarget, 'futuremove')) return false;
2027
+ Object.assign(subtarget.side.slotConditions[subtarget.position]['futuremove'], {
2028
+ move: 'doomdesire',
2029
+ source: source,
2030
+ moveData: {
2031
+ id: 'doomdesire',
2032
+ name: "Doom Desire",
2033
+ accuracy: 100,
2034
+ basePower: 140,
2035
+ category: "Physical",
2036
+ priority: 0,
2037
+ flags: {},
2038
+ effectType: 'Move',
2039
+ isFutureMove: true,
2040
+ type: 'Steel',
2041
+ },
2042
+ });
2043
+ this.add('-start', source, 'Doom Desire');
2044
+ return this.NOT_FAIL;
2045
+ };
2046
+ break;
2047
+ }
2048
+ case 'futuresight': {
2049
+ move.onTry = function (source, subtarget) {
2050
+ if (!subtarget.side.addSlotCondition(subtarget, 'futuremove')) return false;
2051
+ Object.assign(subtarget.side.slotConditions[subtarget.position]['futuremove'], {
2052
+ duration: 3,
2053
+ move: 'futuresight',
2054
+ source: source,
2055
+ moveData: {
2056
+ id: 'futuresight',
2057
+ name: "Future Sight",
2058
+ accuracy: 100,
2059
+ basePower: 120,
2060
+ category: "Physical",
2061
+ priority: 0,
2062
+ flags: {},
2063
+ ignoreImmunity: false,
2064
+ effectType: 'Move',
2065
+ isFutureMove: true,
2066
+ type: 'Psychic',
2067
+ },
2068
+ });
2069
+ this.add('-start', source, 'move: Future Sight');
2070
+ return this.NOT_FAIL;
2071
+ };
2072
+ break;
2073
+ }
2074
+ // Moves with dynamic categories will always be physical if not special-cased
2075
+ case 'lightthatburnsthesky':
2076
+ case 'photongeyser': {
2077
+ move.category = 'Special';
2078
+ if (pokemon.getStat('atk', false, true) > pokemon.getStat('spa', false, true)) move.category = 'Physical';
2079
+ break;
2080
+ }
2081
+ case 'shellsidearm': {
2082
+ if (!target) return;
2083
+ move.category = 'Special';
2084
+ const atk = pokemon.getStat('atk', false, true);
2085
+ const spa = pokemon.getStat('spa', false, true);
2086
+ const def = target.getStat('def', false, true);
2087
+ const spd = target.getStat('spd', false, true);
2088
+ const physical = Math.floor(Math.floor(Math.floor(Math.floor(2 * pokemon.level / 5 + 2) * 90 * atk) / def) / 50);
2089
+ const special = Math.floor(Math.floor(Math.floor(Math.floor(2 * pokemon.level / 5 + 2) * 90 * spa) / spd) / 50);
2090
+ if (physical > special || (physical === special && this.random(2) === 0)) {
2091
+ move.category = 'Physical';
2092
+ move.flags.contact = 1;
2093
+ }
2094
+ break;
2095
+ }
2096
+ }
2097
+ },
2098
+ },
1982
2099
  };