Kurt
294d861f86
Set StatNature on IEncounterable->PKM
...
Mystery Gift formats already set it appropriately in their individual implementations
Closes #2901
2020-06-27 11:46:23 -05:00
Lusamine
565c9a590e
Add some cross boundary encounters ( #2910 )
2020-06-26 23:31:23 -05:00
Matt
3f09afd4cb
Update TradeGift_R1 ( #2909 )
...
Both games have a pair of version exclusive trades on The Isle of Armor, as noted on Bulbapedia.
2020-06-26 11:00:45 -05:00
Kurt
ce5a09055a
Merge branch 'master' of https://github.com/kwsch/PKHeX
2020-06-24 18:59:30 -05:00
Kurt
1ae9cb7602
Handle pika/meow soup evolutions
...
Can lose gmax flag if its current species is able to eat soup, or its origin species could eat soup
this handles stuff like charmander->charizard, as charmeleon would not pass
hopefully there's never a mid-stage evo that has a gmax form, and its final evo doesn't... (don't get any ideas, gamefreak)
2020-06-24 18:59:26 -05:00
Lusamine
bc1538efa5
Add some IoA cross-boundary encounters ( #2902 )
2020-06-24 07:34:26 -05:00
Archit Date
fd48938c8e
fix encounter criteria ability via number ( #2898 )
2020-06-22 22:41:15 -05:00
Kurt
a2d9f06350
Differentiate AbilityType from AbilityNumber
...
invert ability index favoring so that the first ability index is most favored
ability num:
-1=>0/1/2
0=>0/1,
1=>0
2 =>1
4=>2
Ability Type:
0,1,2=>0,1,2
3=>0/1
4=>0/1/2
Should probably get rid of AbilityNumber definition usage but it's so entwined in the trade/static definitions...
2020-06-22 22:01:42 -05:00
Kurt
93308ca4ae
Account for losing/gaining gmax for comparison
...
Don't defer for static, and don't skip for WC8
skip home gifts with player OT when SID7 not 0 (all home OTs have 6digit TID and 0 SID)
2020-06-22 21:29:21 -05:00
Matt
dcb5c1e936
Update IsMatchLocation to allow Isle of Armor Dens ( #2895 )
2020-06-22 10:07:50 -05:00
Kurt
6fb2ebe039
Minor clean
...
add some xmldoc
2020-06-21 19:46:06 -05:00
Kurt
7e69202669
Use criteria for getting ability
2020-06-21 18:16:34 -05:00
Kurt
fc4ba1df35
Bounds check ability requested
...
no longer exception's on RefreshAbility(negative number)
2020-06-21 18:16:18 -05:00
Abyzab
a797459543
Additional Cross Boundary Edge Cases ( #2891 )
...
* Additional Cross Boundary Edge Cases
The static spawn point right outside Brawlers' cave, all of the pokemon are able to chase the player into the cave and be caught
https://cdn.discordapp.com/attachments/401014193211441161/724112694088695918/a0f06577821f60edf119308675de7894.png
https://cdn.discordapp.com/attachments/401014193211441161/724117077698281502/JPEG_20200621_002242.jpg
Unsure if there were more that spawn in this point that have the same behaviour, but these were the ones I found (w/ Ano0onymouse
for Shield ones)
2020-06-21 09:33:29 -05:00
Kurt
523f101c82
Add barraskewda location
...
Closes #2889
Co-Authored-By: Abyzab <abyzab@users.noreply.github.com>
2020-06-20 20:26:54 -05:00
Kurt
645db23706
Extract EvoBase and MoveList from Core
...
These are really old bloated parts of the original legality checking logic; separating for now to rewrite.
2020-06-20 19:44:05 -05:00
Kurt
4c7c6532bb
Check ability deferral with more scrutiny
2020-06-20 13:14:44 -05:00
Kurt
eedaca8712
Fix mistake
...
oops lol
2020-06-20 12:09:03 -05:00
Kurt
8f24477197
Weezing ingame trade can be any ability
2020-06-20 11:37:37 -05:00
ReignOfComputer
2e584f43fc
Additional Statics ( #2883 )
2020-06-20 07:51:04 -05:00
Kurt
36dd5ece21
Initial Isle of Armor support
...
Co-Authored-By: sciresm <sciresm@users.noreply.github.com>
Co-Authored-By: Matt <sora10pls@users.noreply.github.com>
Co-Authored-By: Archit Date <architdate@gmail.com>
2020-06-19 18:51:15 -05:00
Kurt
2cdb5d26db
Clean up some method signatures
...
rename things to be a little more consistent in naming conventions
2020-06-16 21:46:22 -05:00
Kurt
f7d2101500
Update Encounters8NestDist.cs
2020-06-06 09:53:14 -07:00
Kurt
9b89ee09ec
Fix downlevel comparison
...
(for good? pls)
https://i.redd.it/7g2c4d3kisc41.png
ty anubis
remove GetMinimalLevel override, as it's doing the same thing as LevelMin. When regenerating the pkm, we aren't doing anything downlevel related.
2020-06-06 09:00:52 -07:00
Kurt
3af369c152
★Sgr6879 (Copperajah)
2020-06-05 07:31:40 -07:00
Kurt
321a2d120f
Add new distribution raids
...
Add Copperajah crystal (commented); uncomment when released?
2020-06-02 07:09:49 -07:00
Kurt
16c9865505
Update EncounterStatic8N.cs
2020-06-01 14:07:26 -07:00
Kurt
5c0d6d0f31
Extract downlevel check for reuse; clamp edge moves to max raid lvl
2020-05-31 13:28:14 -07:00
Kurt
3fcb29e68a
Remove some reliance on GenNumber
2020-05-31 12:12:48 -07:00
Kurt
6aab8ca449
Minor renaming/type change of passed args
...
Next commit will have more changes where we remove some reliance on PKM.GenNumber, in favor of the passed encounter's generation
2020-05-31 12:12:07 -07:00
Kurt
afa368823e
Minor clean
...
handle some compiler messages
2020-05-26 16:59:47 -07:00
Matt
9b6190a3e9
Add Gigantamax Meowth Distribution Raids ( #2842 )
2020-05-25 17:39:07 -07:00
Kurt
d8cd75908b
Handle gen2 gift egg collision with low hatch cycle req
...
Closes #2824
ty @KR1dude !
change miscverifier to use OT_Friendship instead of CurrentFriendship.
2020-05-24 10:46:08 -07:00
Kurt
4a5a913142
Handle downleveled cases correctly
...
Downleveled shared nest can't go below 20
Downleveled self nest can only happen for 1 or 3 badges and certain star counts, and the result can't be shiny
2020-05-23 22:17:47 -07:00
Kurt
0cdc225224
Kecleon: Comment out static in favor of dexnav encounterslot
...
Encounter Generator stops yielding if anything was yielded (assumes things that are static encounters can't have anything else that would match).
DexNav boosts the wild level (from 25/27) up to the same level 30 of the static encounter.
Thanks @KR1dude !
Co-Authored-By: KR1dude <kr1dude@users.noreply.github.com>
2020-05-20 18:24:55 -07:00
Kurt
6970c3a5fb
Remove IVersion.set property, as separate interface
...
I don't want people to mutate IEncounterable.Version; it's only intended to be set on-load
2020-05-19 21:46:05 -07:00
Kurt
301350d32b
Make IEncounterable expose IVersion get
2020-05-19 21:07:30 -07:00
Kurt
232a9de32e
Add gmax ev
2020-05-18 17:04:31 -07:00
Kurt
6164884700
Merge IGeneration into IEncounterable
...
all but egg exposed it; now, just make egg expose it and remove the unnecessary interface
we still need to Set generation for non-eggs/mgift, so have a separate Settable interface for internal purposes.
2020-05-17 12:32:28 -07:00
Kurt
1b5292cb04
append shared egg-moves rather than early return
...
dl[0].Species is the same as pk.Species; more clear && array access might be slower
only append shared egg moves if shared egg moves exist
2020-05-15 22:49:11 -07:00
Kurt
c8a141534c
make enc move gen tree fetch non-pkm specific
...
just need to get all evo chains possible
fetching a GO leafeon, need to reverse leafeon->eevee, but the LGPE evo chains don't know about leafeon
works fine now
2020-05-15 21:59:06 -07:00
Kurt
3210ced006
Add new gmax-pikachu distribution details
...
can be shiny
can be any ability
still can't evolve
can't wait for gmax-eevee when this bcat expires ;)
2020-05-11 17:17:27 -07:00
Kurt
67b19f7244
Update Encounters8NestDist.cs
...
Bye bye invalid drilbur, nice meme GF
The first rotom2 in Shield had its moves changed too. Keep that rotom-2 since Discharge can't be learned at that level.
since sw and sh have the same drilbur, it moves from sw -> common.
2020-04-28 11:36:03 -07:00
Kurt
2e390573bc
Add new meta distribution raids
2020-04-27 17:44:36 -07:00
Kurt
913d2773bf
Pass form when form doesn't match encounter
...
This is still a horrible hack, needs to be done similar to encounter slots
handle the galar NFE formchange cases
2020-04-23 20:53:57 -07:00
Kurt
b8814d2448
Split GG into LGPE (GP/GE), GG (LGPE||GO)
...
Update usages
2020-04-16 12:48:18 -07:00
Kurt
a9a748e82d
Update EncounterTradeGenerator.cs
2020-04-16 11:06:54 -07:00
Kurt
ba30f33045
Update EncounterStatic.cs
...
Closes #2810
2020-04-16 09:30:20 -07:00
Kurt
9b56eef821
Add deferral case for shiny type
2020-04-15 18:30:29 -07:00
Kurt
0ada4cbd77
Remove some unnecessary null checks
2020-04-12 13:20:40 -07:00
Kurt
30d21e4532
Extract out showdown set interface
2020-04-12 13:05:29 -07:00
Kurt
a94c754c3f
More shedinja edge cases
...
Don't allow shedinja evolution moves if it wasn't evolved in that generation
2020-04-12 11:28:03 -07:00
Kurt
2e0aba55b2
Add Easter distribution raids
...
No difference in sword exclusives
2020-04-09 23:04:29 -07:00
Kurt
270d984130
Minor clean
...
Remove unnecessary null checks
Mark some methods with nullable type
2020-04-04 19:30:50 -07:00
Matt
f7a83dea2c
Force Ability 1 for SWSH Gift Charmander ( #2800 )
...
As per new findings with latest commit of pkNX: 5016baf9ea
2020-03-27 17:47:13 -07:00
Kurt
d73457a395
Update Encounters8NestDist.cs
2020-03-26 08:40:16 -07:00
Kurt
84abc04d07
3/25 Wild Area News
...
Restrict abilities for crystal raids (corviknight always hidden, everything else can be anything-except-hidden).
2020-03-25 19:02:09 -07:00
Kurt
a7026236cc
Fix order of operations
...
underflow behavior is desired; (uint)(10-15/10) results in zero
2020-03-25 14:37:41 -07:00
Kurt
f4952faa6f
Add zh2 trade localization
...
ye it's different from the zh strings, resulting in different nick/OT
ty @Lusamine !
add another gyarados location while we're here
2020-03-21 10:48:26 -07:00
Kurt
aaf6642d31
Rename Data -> BinLinker
2020-03-20 15:18:59 -07:00
Kurt
799e4852cf
Minor clean
2020-03-20 13:33:15 -07:00
Kurt
dbfcef2efe
Move files to group subfolder
2020-03-20 12:13:37 -07:00
Kurt
61cbf04c2e
Fix comparison to watchtower, not wild area
...
unshuffle the IVs for comparison, oops
2020-03-19 21:04:17 -07:00
Kurt
a188317e84
Add another diggersby location
...
ty @Lusamine
2020-03-19 20:50:58 -07:00
Kurt
093586bb69
Update Encounters8NestDist.cs
2020-03-18 22:23:21 -07:00
Kurt
d06949bdb3
Update min level clamps, actually compare req PID
...
Closes #2787
The commit a couple days ago added the missing minimum level restrictions; community documentation was slightly misleading but we should be good now.
The PID check was nonfunctional (compared A==A or A==A*), rather than actually checking the fixed PID.
Co-Authored-By: feralfalcon <feralfalcon@users.noreply.github.com>
2020-03-18 12:23:09 -07:00
Matt
d004389a3e
Update Gen 4 trade min levels ( #2769 )
...
Eggs hatch at Lv. 1 in Gen 4, and some other Species can be found in the wild at Levels lower than their intended evolution requirement.
Closes #2768
2020-03-16 18:14:22 -07:00
Kurt
94d8125574
Split up Friend Safari checks & generator
...
removes one GetEnumerator call for non-fsafari encounters
2020-03-14 11:32:27 -07:00
Kurt
6a5bf02126
Add min levels for trades
...
Make PIDs readonly for trades
Clone FR/LG Lickitung (different min levels)
2020-03-13 21:39:35 -07:00
Kurt
6f0c3c1205
Add 3 more met locations
...
Co-Authored-By: Lusamine <lusamine@users.noreply.github.com>
2020-03-12 20:36:31 -07:00
Kurt
fbd533092d
Fix misspelling of the word "Received"
...
Closes #2757
Co-Authored-By: pi1024e <pi1024e@users.noreply.github.com>
2020-03-12 15:05:34 -07:00
Kurt
1c2d9cf84c
Add another Lanturn location, level 38 Corviknight
...
Yay using bots to collect encounter data from players around the world :P
Co-Authored-By: Lusamine <lusamine@users.noreply.github.com>
2020-03-11 16:38:04 -07:00
Kurt
093ce2a020
Add ★And337 4-Star Gigantamax Corviknight
2020-03-08 17:20:00 -07:00
Kurt
e2c579fbbc
3/8 - Gengar/Machamp nests
...
New? Dynamax Crystal: ★And337 - 4-Star Gigantamax Corviknight ???
2020-03-08 17:14:20 -07:00
Kurt
ed02f39224
Use another overload
...
Co-Authored-By: Archit Date <architdate@gmail.com>
2020-03-04 22:31:07 -08:00
Kurt
b831d52b79
not capturable
...
gotta drip feed content -- tease ppl to migrate from prior games ($$$)
2020-02-26 17:16:52 -08:00
Kurt
283b7a353b
Add mewtwo raids
...
Mewtwo encounter has been added; awaiting confirmation that it can be captured (assumed yes)
Gen1 starters can be captured in beast ball in gen7 (scan), so nothing changes for ball legality.
2020-02-26 17:03:53 -08:00
Kurt
549e6f616b
allow shared eggmoves on format
2020-02-22 23:27:47 -08:00
Kurt
509e2f1fa3
Handle more evolution/form checks
...
Closes #2726
1. Add variant evolutions to form-match cases
2. Ban LGPE origin alolan raichu
3. Add egg form check for unavailable regional forms
4. Previous commit fixed mew (remove ribbon interface from WB7)
Co-Authored-By: Matt <sora10pls@users.noreply.github.com>
2020-02-20 22:11:48 -08:00
Kurt
15121c2945
Fix shared egg moves for non-galar origin
...
Use the private method; we already know the gen and that the egg moves are permitted
Relocate method to MoveEgg
2020-02-16 19:47:57 -08:00
Kurt
f48a11f013
add 2/17 raids
...
milcery gone, toxel appears
2020-02-16 17:02:53 -08:00
Kurt
87bb4c4138
Add more met locations
...
https: //projectpokemon.org/home/forums/topic/56227-bug-missing-game-encounter-affecting-legality-status/
Co-Authored-By: pp-theslayer <pp-theslayer@users.noreply.github.com>
2020-02-11 20:50:26 -08:00
Kurt
ebf20d927b
More transfer implications
...
Totems are downsized to regular
araquanid, togedemaru, and ribombee totems can't transfer (at the moment)
2020-02-11 20:11:33 -08:00
Kurt
cb5d8186fd
Defer formargument for raids
...
Closes #2693
Account for runerigus too, if they ever have a den for it ;)
Co-Authored-By: crzyc <crzyc@users.noreply.github.com>
2020-02-09 15:04:45 -08:00
Kurt
e9e1e5e166
Fix encounter find for passed egg moves
...
https://projectpokemon.org/home/forums/topic/56188-encounter-database-froslass-error/
2020-02-08 13:36:37 -08:00
Kurt
29258ca501
Add tox nests
2020-02-06 17:11:39 -08:00
Kurt
d3d6225a73
Fix unown ?! order
...
Closes #2683
ty @Kermalis !
2020-02-04 19:03:55 -08:00
Kurt
222d95e742
Add bridge field loc for nest35
...
https://projectpokemon.org/home/forums/topic/56154-illegal-theivul/
2020-02-01 21:45:33 -08:00
Kurt
774dec5123
Add milcery distro nests
2020-01-30 16:44:51 -08:00
Kurt
dd07126d83
Relocate level suggestions to EncounterSuggestion
2020-01-28 16:21:38 -08:00
Kurt
3111a8dc62
Cast the array a little safer
...
bad hacks with invalid future gen evolutions yield no evolution data, which results in empty arrays.
2020-01-26 23:58:14 -08:00
Kurt
ffa70e7626
Move files
...
no functional change, just putting stuff in a more appropriate folder
2020-01-25 17:22:20 -08:00
Kurt
9c28ffacc0
Simplify N's pkm encounter handling
...
Readonly PID; sparkle is True always, so it's a const instead of a mutable property.
2020-01-25 12:31:56 -08:00
Kurt
7a7358d0e5
Flag g4 bad met locations for hatched eggs
...
Traded eggs in gen4 can have from any game (since version isn't updated on hatch).
Use the hashsets, and remove the incorrect array. The incorrect array allowed stuff like Pokéwalker to be a "valid met location", hah.
2020-01-25 12:19:59 -08:00
Kurt
94eee74e5c
Add another rhydon lvl 46 loc
...
Ty @slp32 for reporting in #2633 , && anubis (discord) for finding the actual level without being asked /s
2020-01-24 17:56:42 -08:00
Kurt
5be9c6bcc8
Remove unnecessary null handling
...
objects are no longer null
2020-01-20 23:32:05 -08:00
Egzon
1a3d8b1fab
Fix Seedot and Nuzleaf swarm moves ( #2648 )
2020-01-20 14:31:59 -08:00
Kurt
63ea57436f
Make the template IV/contest stat array readonly
...
See prior commits
no longer need to clone subarrays, they're shared immutable
2020-01-18 19:11:29 -08:00
Kurt
843330a375
Remove unnecessary null checks
...
this is a null free project /s
dont provide null, else u deserve to get an exception
2020-01-18 16:57:25 -08:00
Kurt
8312c52cc1
Make Move[] readonly list
...
contract: don't modify the template movesets
mystery gift now exposes IRelearn, remove unnecessary type checks
2020-01-18 16:46:38 -08:00