Commit Graph

232 Commits

Author SHA1 Message Date
Ivo Julca
b4ec88610f Properly load banlist tables for modded formats
They are no longer loaded in Tools.getFormat, which could be called from any modded tools and cached the bans.
2014-08-24 22:24:09 -05:00
Ivo Julca
6a9497b53c Use shallow merges to load mod data 2014-08-24 19:15:53 -05:00
Guangcong Luo
2e8ffb0d50 Lazy load mods into Tools
mods are now loaded the first time Tools.mod() is called, rather
than during startup.

This has two effects:
1. Significantly faster startup
2. Less RAM usage on main process, which never uses Tools.mod()
   at all

Sadly, the amount of RAM saved is pretty insignificant on main,
but it could be nice for smaller servers.
2014-08-20 20:31:32 -04:00
Guangcong Luo
12b673bb49 Fix style errors; update gulpfile
I used a hack to make the multiple declaration errors go away,
so all that remained in jsHint were actual errors, which I've
now mostly fixed.

All this linting ended up uncovering one actual bug: Uproar's
message not showing. It's a very minor bug in a move no one uses,
so I'm going to fold it into this commit.
2014-08-10 18:06:44 -04:00
Slayer95
3ea30b4790 Support searching for natures with /data 2014-06-14 22:54:08 -05:00
Slayer95
1b27d0879c Natures are now available in Tools.data 2014-06-14 19:53:00 -05:00
Slayer95
b025743d34 Global 'sanitize' is now 'escapeHTML' method of Tools 2014-05-12 20:52:29 -05:00
小太
5c8fc7b982 Space after function for anonymous functions 2014-04-22 01:58:16 +10:00
小太
6fb3bc332a Spaces around operators and === instead of == 2014-04-22 01:56:11 +10:00
Slayer95
2efe53ab05 Add missing semicolons and remove whitespace 2014-04-19 00:05:31 -05:00
Slayer95
3fc36ef80f 'clampIntRange is now a method of 'Tools' and no longer global 2014-04-18 15:14:54 -05:00
Slayer95
4c18aa60f1 Remove global 'fs' 2014-04-17 14:37:32 -05:00
V4Victini
93ad70d7dd Remove Pokeball from team data 2014-03-28 00:54:56 -04:00
Relados
7c537c8249 Allow aliases for formats
This will make it easier for tournament hosts to create tournaments for formats with extensive names
2014-03-26 19:31:41 -05:00
V4Victini
adbed9d633 Add pokeball field to sets 2014-03-26 15:48:27 -04:00
Guangcong Luo
15b0397143 Make team unpacker less susceptible to DoS 2014-03-09 15:04:40 -04:00
Ivo Julca
03a62165fb Fix crash when packing a team with custom mons 2014-03-06 18:38:43 -05:00
Ivo Julca
6757ff8110 Fix crash when parsing a team with custom mons 2014-03-06 18:22:53 -05:00
Guangcong Luo
99807308ef Add level to packed team format 2014-03-06 00:10:40 -05:00
Guangcong Luo
7b8acd7604 Better team packing/unpacking 2014-03-06 00:07:24 -05:00
Guangcong Luo
e2b57563a6 Optimized team sending
Teams are now sent using our new packTeam/unpackTeam code, rather
than JSON. This compresses teams from an average of 2000 bytes to
an average of 500 bytes.
2014-03-05 23:30:16 -05:00
Ivo Julca
ceff82920e Don't inherit init in scripts.js 2014-02-14 18:42:04 -05:00
Ivo Julca
ffe340769a Optimize Tools.modData in nested mods
Now it will check whether the datum is the same as its homologous in its parent mod rather than in the base mod.
2014-02-13 20:04:21 -05:00
Tyler Stark
0723abe4e0 Reverting some of the refactor 2014-02-09 23:48:57 -06:00
Tyler Stark
bff353cc58 Second Pass at cleaning up the code. These are pretty safe edits that include adding 0 to decimal values, fixing variables that are declared multiple times, and removing duplicate keys 2014-02-09 23:38:57 -06:00
Ivo Julca
0150143408 Fixes for type change
Fixes Trick-or-Treat and Forest´s Curse stacking.
Fixes Roost overriding other type changes when it ends.
Fixes Roost not suppressing Flying type adquired afterwards in the turn.
Fixes mons not adquiring Flying type when transforming into a roosted pokemon.
Fixes nature of types (added by Trick-or-Treat or Forest´s Curse) not being passed on use of Reflect Type or Transform.
2014-02-01 19:05:28 -05:00
Guangcong Luo
e2f82fa8f3 Rename data/formats.js -> data/rulesets.js 2014-01-09 19:37:04 -08:00
Guangcong Luo
a39fdd6006 Split off team validation to team-validator.js
This is the first step in a refactor to split team validation into
its own process.
2014-01-09 17:35:19 -08:00
Ivo Julca
88260165c5 Fix Gen 1 and 2 being unplayable
Do not cap EVs total for pokemon.
Also set abilities to None again
2014-01-09 15:21:57 -05:00
Ivo Julca
c10354578b Fix Flying Press and Freeze Dry
Items and abilities supposed to activate depending on effectiveness were not accounting for their effects
2014-01-08 19:45:22 -05:00
Guangcong Luo
9ad8ad2305 Don't allow megas to get around bans 2014-01-08 02:54:50 -08:00
The Immortal
8621bbee53 Event Pokemon can use Ability Capsule in Gen 6 2014-01-06 14:33:48 +04:00
Slayer95
4e10d4cf13 Update STABmons id for set validation 2014-01-03 19:43:50 -05:00
The Immortal
08bca77cf4 Allow CAP to have HMs 2013-12-31 14:10:41 +04:00
The Immortal
1d191ac926 Fix possible crash in validator
Pokemon that received evolutions in future gens.
2013-12-29 00:39:12 +04:00
The Immortal
bbdecc657e Update learnset checker
HMs can't be transferred. Gen 5 to 6 still needs to be tested.
2013-12-28 00:41:44 +04:00
Slayer95
bb5ce01269 Fix crash on validation of nicknamed pokemon 2013-12-27 12:49:03 -05:00
The Immortal
15079df1bd Update set validator again
Forgot about Ability Capsule
2013-12-27 19:32:00 +04:00
The Immortal
824467f9ea Update set validator
This prevents Pokemon with additional abilities being allowed with older
generation moves; such as Frisk Dusclops with 3rd, 4th or 5th gen tutor
moves
2013-12-27 17:34:22 +04:00
The Immortal
926eb400db Change pokebank incompatibility message
This problem only applies to VGC 2014 now
2013-12-27 12:04:47 +04:00
The Immortal
2606b21c7c Remove Pokebank tiers 2013-12-26 15:10:02 +04:00
Guangcong Luo
d902f8df6d Sync learnsets 2013-12-20 16:08:02 -08:00
V4Victini
863bbb131c Fix legality check
Even in Gen 6, Level-up moves cannot be passed down to babies of male-only species
2013-12-03 00:54:49 -05:00
V4Victini
d76f3d1e9d Factor Ability Capsule into legality
Pokemon can have 3rd Gen moves with 4th Gen Abilities in Gen 6
2013-12-02 17:46:07 -05:00
V4Victini
c81b32d4b5 Moves unavailable in XY cannot be sketched. 2013-11-26 10:43:11 -05:00
V4Victini
1725c9dad3 Perish Song is illegal on Gastly in No Pokebank metas
Destiny Bond is fine, it is a level up move.
2013-11-23 17:14:11 -05:00
Guangcong Luo
33e1a1b4ac Changes to gen 6 legality checking
- We have a new format flag requirePentagon, which is a slightly less
  strict version of noPokebank that allows Pokebank breeding.
- Unreleased items and abilities are now considered entirely illegal,
  including in Pokebank.
2013-11-23 15:26:41 -06:00
V4Victini
5c0305daa9 "No Eggs" Egg Groups is now the "Undiscovered" Egg Group 2013-11-22 20:49:42 -05:00
The Immortal
0724a05469 Fix Pokemon with hidden abilities and Gen 4 only moves being allowed
Specifically, Prankster Murkrow with Defog
2013-11-21 22:36:08 +04:00
Slayer95
193a400650 Fix Sketch issues
Smeargle could learn Magikarp Revenge. Necturna could learn Struggle, Chatter and Magikarp Revenge
2013-11-17 03:24:39 -05:00