Commit graph

182 commits

Author SHA1 Message Date
Kaphotics
e06c38151c Fix typo in comment
such worth
2016-05-05 20:34:58 -07:00
Kaphotics
e7e793a2f4 Add basic memory checks
Thanks Eskuero. WIP.
2016-05-05 20:05:22 -07:00
Kaphotics
96578e4cbd Add 3IV encounter check 2016-05-03 19:36:47 -07:00
Kaphotics
eb5c753db0 Fix iterator for wc6 checking relearn
The .Remove was tampering with the same variable that the foreach was
iterating over, causing exceptions. By casting to a WC6[], the List<WC6>
can be altered and the array is iterated over instead.
2016-04-30 14:23:56 -07:00
Kaphotics
d3b5968efd Add more savegame specific safeguards for pk6set 2016-04-24 12:40:46 -07:00
Kaphotics
c2981510a9 Cosplay pikachu fixes
Form can be changed only for the received cosplay Pikachu.
Can be obtained in any location.
Regular Pikachu cannot be given a cosplay-only form
Cosplay Pikachu cannot have a non-cosplay form.
2016-04-23 14:16:12 -07:00
Kaphotics
150d781699 Tweak slot detection
Fixes hidden ability slot detection
2016-04-23 12:31:12 -07:00
Kaphotics
ce53cd704d XY Battle Resort egg met location
Hatched eggs would have to be Link Trade.
2016-04-23 10:12:52 -07:00
Kaphotics
9b0394847b Level 1 traded Milotic
Thanks Gastly!
2016-04-23 08:37:05 -07:00
Kaphotics
9ccdb945d4 Add baby pokemon ball inheritance
Parents are in the table, but the routine only checks base species.
2016-04-22 20:08:28 -07:00
Kaphotics
4a42ac68ba Improve Fateful encounter check message 2016-04-22 20:08:02 -07:00
Kaphotics
a6ca9c8bf1 Add indication for Wurmple evolution
Hard coded english but whatever.
2016-04-21 19:46:33 -07:00
Kaphotics
214473756e Add Fateful Encounter check
Cleared up the Event check a little to allow Fateful Encounters to slip
through.
2016-04-21 19:32:22 -07:00
Kaphotics
2c233be43f Refactoring
No functional changes
2016-04-21 18:48:21 -07:00
Kaphotics
60205cd700 Wurmple evolution check (EC) 2016-04-21 00:28:40 -07:00
Kaphotics
a733b99b31 Defer Gift ball check
Now returns invalid ball instead of invalid encounter
2016-04-20 20:46:18 -07:00
Kaphotics
4d1c621eb5 Add Pressure/Flute encounter modifications
Thanks Angeflo for the report, including test cases.
2016-04-20 19:47:40 -07:00
Kaphotics
82ee4ac1bf Merge branch 'master' of https://github.com/kwsch/PKHeX 2016-04-19 20:16:43 -07:00
Kaphotics
92c686fe94 Fix Friend Safari Floette
RBY are forms 013 not 024

Thanks Angeflo!
2016-04-19 20:16:40 -07:00
Wheth
171f1fdd82 Fix relearn moves' Legality Check for Pokémon with only one matching Wonder Card. 2016-04-19 15:43:05 +02:00
Kaphotics
027e0e19b1 Refactoring 2016-04-18 18:21:50 -07:00
Kaphotics
8298484e23 Improve move source indication
Empty slots say Empty instead of "Level-up" or "Relearn move"
2016-04-16 12:01:09 -07:00
Kaphotics
4d0ff2a197 Add move source indication to verbose output
Indicates the Valid legality of moves (level up, relearn pool, etc).
2016-04-16 11:36:01 -07:00
Kaphotics
5feb1c887b Fix nearly identical events with different moves
Charizardite X/Y events in particular came up as invalid (Y).

The Y event had Inferno (not a normal move), but it wasn't in the
relearn pool. Due to these nearly identical events only differing in
terms of usable movepool (not relearn pool), the check has to be able to
be deferred to later if multiple cards are still valid.
2016-04-16 11:35:16 -07:00
chenzw95
f192db095b Check for illegal hatched species 2016-04-15 15:40:35 +08:00
Kaphotics
16f291e4ac Add Form checks 2016-04-14 03:17:03 -07:00
Kaphotics
9f528e18a0 Add level check for invalid encounters
Extra hints :)
2016-04-11 18:44:26 -07:00
Kaphotics
e226221662 Add Terminus Cave ceiling encounters
Thanks rinnegan!
2016-04-10 18:19:23 -07:00
Kaphotics
4fa777d86a Tweak verbose output
Group fishy with fishy, and valid with valid. Fishy checks are pulled to
the top.
2016-04-07 22:28:26 -07:00
Kaphotics
53da8c3b87 Skip ID check if EncounterTrade
SID = 0 is totally valid.
2016-04-07 22:27:36 -07:00
Kaphotics
e66342fe6c Fix trade lapras level 2016-04-07 21:34:43 -07:00
Kaphotics
e8cc1a386d Add egg level check
Catches level 12 charizards and level 50 tyranitars that were bred
2016-04-07 18:19:21 -07:00
Kaphotics
52ab0bd8d7 More strict checks
Only fishy adds.
Matching TID/SID
Matching PID/EC
Matching EXP/Level
2016-04-07 17:56:39 -07:00
Kaphotics
d3fbaed225 Remove moveID references, use language strings
Fixes #96
The legality core should not rely on text resources for legality output,
and move IDs are meaningless to the common user.
2016-04-06 18:13:43 -07:00
Kaphotics
12c9636a09 Add better contest stat checks
A pokemon from XY that has never been traded cannot have contest stats
other than 0.

Milotic cannot be Beauty-LevelUp evolved in XY as an untraded mon.
2016-04-03 21:46:05 -07:00
Kaphotics
09811c32e4 Add verbose export
Partial commit error fixed
2016-04-03 17:11:58 -07:00
Kaphotics
87b65c4c5b Add Link shiny check
Thanks hehrerh!
2016-04-03 16:56:57 -07:00
Kaphotics
42f13c6294 DexNav Hidden Ability
Thanks Wanderer1391!
2016-03-30 19:55:27 -07:00
Kaphotics
8af8602c31 Fix Link Trade eggs
Thanks Wanderer1391!

Traded eggs get their Met Location set to 30002.
When an egg hatches, if Met Location > 0, copy Met Location to Egg
Location and set Met Location equal to current overworld location.
2016-03-30 19:07:52 -07:00
Kaphotics
4869f188bd Check memories for eggs/transfer
Catches some of those jan2014 banked pentagon mons without OT memories
The last check is unused; the last two checks are designed in case past
gen pkm are checked.
2016-03-30 18:53:34 -07:00
Kaphotics
4cef68cbc3 Add pokeball-only fossil pkm
Exlusions for the other balls happen in the other ball checks.
2016-03-28 22:42:29 -07:00
Kaphotics
7f8f8c4756 Check Pokeball outside & before egg ball chk
Fixes Fossil pkm getting flagged.
2016-03-28 22:36:01 -07:00
Kaphotics
c00651078a Add Gen3/4 Ball exclusions
Additional Changes:
Removed duplicate EncounterLink check
Moved RelearnBase resetting to the verifyRelearn() method.
2016-03-28 22:30:23 -07:00
Kaphotics
65901f7f41 Add more strict ball checks
Sport/Apricorn/Safari/Dream checked

Also snuck in encountertype tracking for readability/calcOnce
2016-03-27 22:05:51 -07:00
Kaphotics
908ff709c6 Add Apricorn & Hidden Ability check
Thanks Eskuero!
2016-03-26 20:52:06 -07:00
Kaphotics
7a7c8488f3 Add Ingame Trade OT/Nick check 2016-03-26 17:23:53 -07:00
Kaphotics
7868b925d3 Add Master Ball & Gender based Ball checks
Safari ball and general ball checks for past gen pkm are still weaker
than they can be.
2016-03-26 17:12:09 -07:00
Kaphotics
a277b4a734 Ingame Trade exclusion
Return early if not ingame trade
2016-03-26 16:40:12 -07:00
Kaphotics
ae424cb116 Update changelog (03-26-16)
new release posted (03-26-16)
2016-03-25 20:39:31 -07:00
Kaphotics
a2c42a2293 RelearnMove suggestion instead of copyMoves 2016-03-25 00:10:11 -07:00
Kaphotics
6d6866de64 Add Link origin game lockouts
Certain link gifts can only be received in certain games.
2016-03-23 17:57:22 -07:00
Kaphotics
f1c119214a Method reordering
Nothing changed, just organization.
2016-03-22 22:50:54 -07:00
Kaphotics
092a34e239 Move MatchedWC6 into EncounterMatch 2016-03-22 22:49:46 -07:00
Kaphotics
38d67c9ef1 Refactor Safari to be an encounter slot 2016-03-22 22:31:30 -07:00
Kaphotics
36d74b8d85 Refactoring & Fixes
Add tracking for wild / link encounters
Fixed sylveon ball check
Added Demo link pkm
Added Horde Hidden Ability checks
2016-03-22 19:47:13 -07:00
Kaphotics
fa68aa7a29 Minor fixes
Fix ribbon bits, fix formchange
2016-03-21 23:43:03 -07:00
Kaphotics
903f070e61 Fix Link ribbon check 2016-03-21 23:30:31 -07:00
Kaphotics
262abad921 Improve ingame trade filtering
More strict.

Dunno about PID/EC values.
2016-03-21 21:51:36 -07:00
Kaphotics
8211509d99 Add Ingame Trade ability, chk Fix Egg Ball chk
Missed the return at the end
2016-03-21 21:50:39 -07:00
Kaphotics
b109af18e7 Add History check, Expand ball check 2016-03-21 21:31:06 -07:00
Kaphotics
e938aa6765 Add more stringent wc6 comparators 2016-03-21 19:53:02 -07:00
Kaphotics
b05b66810c Add Ball/Ability checks & wc6 PID check
Probably am going to move the WC6 fetch logic out
2016-03-21 08:01:08 -07:00
Kaphotics
7e6c92f343 Add ribbon legality check 2016-03-20 15:20:11 -07:00
Kaphotics
82a9850c4a Tweak nickname check severity 2016-03-19 18:06:02 -07:00
Kaphotics
729a69dbee Add giratina form move case 2016-03-19 12:47:24 -07:00
Kaphotics
119efdb45e Bump dexnav level to 30 2016-03-19 09:28:15 -07:00
Kaphotics
a6d5494193 Increase dexnav max boost
13->25
2016-03-19 09:14:48 -07:00
Kaphotics
0d13e812a9 Fix Keldeo Secret Sword 2016-03-19 07:53:55 -07:00
Kaphotics
d57533ea77 Add level check
Met level > Current Level
2016-03-18 22:49:21 -07:00
Kaphotics
b3337cbf24 Add missing static encounters
Resolves #84
2016-03-18 22:48:53 -07:00
Kaphotics
8c4ef40a82 Tweak encounter detect
DexNav only under the correct conditions (dexnav may not have an eggmove
for some level boosted ones), fix for dynamic range
2016-03-18 17:18:01 -07:00
Kaphotics
ce2b2949e8 Fix Rock Smash slots
DexNav table derivation was reusing the same objects, just create new
ones
2016-03-17 23:25:59 -07:00
Kaphotics
6d6b44f43b Add alt slots for XY
Rustling/Swoop/Drops
2016-03-17 20:20:34 -07:00
Kaphotics
213578163e Fix shedinja logic
Can have egg moves, and locations are irrelevant
2016-03-17 19:37:06 -07:00
Kaphotics
d436caf273 Minor tweaks 2016-03-17 18:28:51 -07:00
Kaphotics
d986b3bb86 Add ingame trade checks
There's memories associated, IVs, EVs, whatever; best to check them in
the individual legality check methods.
2016-03-17 17:25:21 -07:00
Kaphotics
0fc4da3431 Begin adding EncounterTrade
Fixed a few things in the EncounterStatic, added a few attributes
(antishiny, Gender, Ability, IV, Contest) for appropriate pkm
2016-03-16 23:29:28 -07:00
Kaphotics
14266b5404 Add castform gift + etc
Add nature locks for sharpedo/camerupt
2016-03-16 19:50:18 -07:00
Kaphotics
d471c965aa Add fossil encounter checks 2016-03-16 19:15:49 -07:00
Kaphotics
eedddce9a3 Fix dexnav & static encounter locations 2016-03-16 07:45:02 -07:00
Kaphotics
cd024f25b0 Fix beldum gift 2016-03-15 23:10:18 -07:00
Kaphotics
b9893a9472 Minor fixes
Fix hot springs egg location
Fix link gift not returning valid
2016-03-15 22:04:04 -07:00
Kaphotics
28568c2908 Tweak evo levelup param
0 - item required (method 5,6,7)
1 - trade required (method 8)
2 - level required (everything else)

Fixes encounter checks of trade evolution pkm
2016-03-15 21:46:49 -07:00
Kaphotics
7477d4d20e Farfetch'd edge case 2016-03-15 21:40:11 -07:00
Kaphotics
820412e93b Add Egg name checks 2016-03-15 21:15:40 -07:00
Kaphotics
dc4628abe1 Add XY/AO attribute for PK6
A little more explicit.
2016-03-15 19:06:13 -07:00
Kaphotics
116f941dcf Add Nickname legality check 2016-03-15 18:56:18 -07:00
Kaphotics
9b9775b013 Add Friend Safari exclusive forms 2016-03-15 18:35:40 -07:00
Kaphotics
1a2aee930d Add Keldeo move mismatch
Probably going to move to a form check later.
2016-03-14 23:54:13 -07:00
Kaphotics
6b410dd65c Add basic form moveset checking
Also added Pikachu/Rotom form moves
2016-03-14 23:46:18 -07:00
Kaphotics
425de6242a Add duplicate move check
Cleanup the class too.
2016-03-14 23:26:51 -07:00
Kaphotics
c7cb52ecbd Add Shedinja encounter check 2016-03-14 17:04:03 -07:00
Kaphotics
9ab50c1342 Fix Dialga/Palkia 2016-03-14 00:48:24 -07:00
Kaphotics
1ed58fd8d3 Fix ORAS Starter location
Oops, not littleroot town.
2016-03-13 20:55:20 -07:00
Kaphotics
ef8a0ca708 Check for DexNav amped species
Level mismatch on regular wild check was lacking a comparison for
dexnav.
2016-03-13 20:45:18 -07:00
Kaphotics
e996135dd3 Fix comparison
Wrong way!
2016-03-13 20:43:29 -07:00
Kaphotics
c300e80e19 Fix Species Comments 2016-03-13 20:28:40 -07:00
Kaphotics
93677fcdda Add Spiritomb/Voltorb
Shoulda just checked stationary encounters for ORAS first ;)
2016-03-13 20:22:29 -07:00
Kaphotics
150a1c942f Add Electrode encounter 2016-03-13 20:20:11 -07:00
Kaphotics
49e7225c3e Refactoring
Tanabata Jirachi has an underleveled move (illegal), so we have to track
some data. Move LegalityCheck back into LegalityAnalysis, but in a
separate file still.
2016-03-13 20:19:04 -07:00