Commit Graph

3109 Commits

Author SHA1 Message Date
Kurt
3100471299 Strip out some unnecessary logic
notnull => no need to check for null manually
2020-04-16 12:58:48 -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
1192ff7307 Case insensitive shiny/suggest
closes #2809 , nothing wrong with existing behavior, just allowing the "suggest" and "shiny" to be any.
2020-04-15 16:23:20 -07:00
Kurt
66dddc9101 Clean up some method parameters 2020-04-14 10:59:36 -07:00
Kurt
546412e410 Rename class/method name 2020-04-14 10:59:16 -07:00
Kurt
ee1cfa8912 Hanle some compiler messages 2020-04-14 10:52:19 -07:00
Kurt
8936c58417 Skip setdex/modify on box sort 2020-04-14 10:46:21 -07:00
Kurt
40d000fdce Extract reusable method 2020-04-14 10:08:02 -07:00
Matt
be229d03fb
Update GO Shiny Banlist (#2808)
Forgot to update when the Easter event began. Removes Shiny Exeggcute/Exeggutor.
2020-04-13 13:57:34 -07:00
Kurt
f22b1c3e52 Update 20.04.14 2020-04-13 10:16:49 -07:00
Kurt
d398ad56d5 Update translations
Not really much here, but that's all that's been added since last time.
2020-04-13 09:55:21 -07:00
Kurt
49bdfa7f9d Add date copy $suggest 2020-04-13 09:23:31 -07:00
Kurt
76e1f70b9e Update ShowdownSet.cs 2020-04-12 20:31:44 -07:00
Kurt
67e9809ecd Require exact form matching 2020-04-12 19:41:03 -07:00
Kurt
33bdacebe8 Minor tweaks
Handle some compiler/extension suggestions
2020-04-12 16:07:59 -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
8ac61d7ff7 Allow antishiny CXD spreads for some checks 2020-04-11 23:14:16 -07:00
Kurt
2e0aba55b2 Add Easter distribution raids
No difference in sword exclusives
2020-04-09 23:04:29 -07:00
Kurt
7fd7a86074 Shiny check lockless XD shadow encounters 2020-04-09 14:14:48 -07:00
Kurt
4d061c561a Add initial marking checks 2020-04-06 16:32:23 -07:00
Kurt
0b48034f4d && -> ||
we want to decrypt if either are set
(they should be zero as they're the always-null terminators of strings)

ty @Lusamine !
2020-04-06 15:12:51 -07:00
Kurt
fdc174ea99 Fix raichu-a banned evolution in g7 s/m
add a comment and parenthesis in something unrelated

Closes #2807 ty @MichiS97 !
2020-04-06 08:10:49 -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
6f39f25189
Misc changes (#2806)
Add small Female Hippopotas/Hippowdon sprites (Closes #2789)
Add Pt Togepi Gift Egg Event Constant (Closes #2801)
Remove Pokémon Den from Egg Locations (Closes #2804)
Fix Shiny Dhelmise sprite (as per 3774e0dd34)
2020-04-04 17:10:41 -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
Chris
f6ad77ab04
Fix item check for silvally (pixie plate)
Remove the comparison, was a copy/paste from Arceus 3y ago
a7339ae26f
2020-03-27 12:15:22 -07:00
Kurt
d73457a395 Update Encounters8NestDist.cs 2020-03-26 08:40:16 -07:00
Kurt
9e8858ac51 Allow traded gen8 eggs to have OT linktrade mem
Stupid lacking game checks
2020-03-25 19:18:52 -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
d65338557e Add hp stat 2020-03-24 11:44:54 -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
5402c5d108 Update Analysis.cs 2020-03-20 23:26:45 -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
XxPhoenix1996xX
d66d761d3c
Update Spanish Translation (#2795)
* Update lang_es.txt

* Create flags_gg_es.txt

* Update PKHeX.Core.csproj
2020-03-20 11:42:58 -07:00
Kurt
cce28df6e3 Update PKMConverter.cs 2020-03-20 09:28:16 -07:00
Archit Date
e3e46209e9
add back watchtower as a legal location (#2796)
made an oopsie, Watchtower Ruins also apparently includes 2 extra dens that can spawn encounters that are not 8NC. Den 17 is locked to 8NC encounters only, but location-wise there is no difference between Den 15,16,17
2020-03-20 07:22:44 -07:00
Kurt
c8343e9f5d Update EncounterArea8.cs 2020-03-19 22:15:01 -07:00
Kurt
72e0fbe225 Update EncounterArea8.cs 2020-03-19 21:06:46 -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
27d1feafd7 Revise egg wc3 fateful check to return instead of break
Emerald has the same met locations too, which doesn't clear fateful. So if it was hatched in an RS(E) location, we can't know for sure.

Closes #2790 , but keep in mind the posted file is illegal anyways -- can't get egg move aromatherapy with wish.
2020-03-19 17:05:16 -07:00
Kamron Batman
a33fa5efbe
Fixes files (#2792) 2020-03-19 13:48:46 -07:00
Kurt
5e32e9203e Add setting to apply nature to statnature on import
Co-Authored-By: toim22 <toim22@users.noreply.github.com>

#2794
2020-03-19 13:47:25 -07:00
CanoeHope
df09868470
Add another SWSH block (#2793)
Nothing special. Just found it and figured why not add it.
2020-03-19 11:38:17 -07:00
Kurt
287a2ac5c5 Rework handling of bk4 constructor
Can't really detect if it's shuffled or not; just assume it's always unshuffled unless it originates from a save file read. Probably not a perfect solution, but achieves better results.

https://projectpokemon.org/home/forums/topic/56217-error-in-archive-bk4/
2020-03-18 23:34:53 -07:00
Kurt
090f83d197 Unban and337 as held item 2020-03-18 22:31:41 -07:00
Kurt
afeb06d3ae Allow ability 1/2 for wb7 origin 2020-03-18 22:31:27 -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
XxPhoenix1996xX
8a1405125e
Add Spanish Event Flags Translation / Update Spanish Translation (#2786) 2020-03-18 10:25:22 -07:00
Kermalis
face69d469
Fix Emerald decorations (#2788) 2020-03-18 00:25:02 -07:00
Kurt
429a3b1a08 Expose decoration list for editing
Closes #2785 , not making a GUI for this (someone else can do it)

Moves RTC3 to the appropriate folder
2020-03-17 12:14:01 -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
98cd28d5d3
Swap string differentiation for HOME gifts
30018 is used by the gift; original fake WC's that EventsGallery created used the 40086 (now fixed on their repo)
2180608ed2
2020-03-16 12:05:33 -07:00
Kurt
1c6b99185d Ignore bits above the first 3
Some save files use bits 3-7?
2020-03-15 11:11:55 -07:00
Kurt
3aaf318035 Update event database, handle HOME gifts horribly 2020-03-14 14:22:45 -07:00
Kurt
d21cca7a90 Move gmax strip to top 2020-03-14 12:21:42 -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
c4ce22412a Handle japanese name if egg
Closes #2756

For eggs that we don't know the OT of, they'll still show invalid (empty string).
ty @PrometheusG !
2020-03-13 18:37:51 -07:00
Kurt
0a39e0a834 Handle gmax tox with latest showdown logic 2020-03-13 17:43:21 -07:00
pi1024e
8a1e73e5b3
Change OT_Class to have an expression body (#2759) 2020-03-13 10:28:50 -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
b68e9472cb Break apart value fetch -> compare
easier to debug
2020-03-12 15:05:59 -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
eb01591861 Remove duplicate method
Extract magic number 0x40000
2020-03-11 21:09:36 -07:00
Kurt
b5f1fc71c4 Use original PID for xor flip check
swap pkm.PID -> pkm.EncryptionConstant, simplify comparison

Co-Authored-By: Lusamine <lusamine@users.noreply.github.com>
2020-03-11 20:09:09 -07:00
Kurt
dcb7336d92 Hide pika beach on !YW, add a few RS flags
Closes #2745 , ty @FeralFalcon

hidden items are meh, items can be hacked in.

Co-Authored-By: feralfalcon <feralfalcon@users.noreply.github.com>
2020-03-11 19:33:17 -07:00
Kurt
1d5f929981 Fix shiny check behavior for XD nonshadows
XD compares the player TSV against the non-shadow members, which is unnecessary but does result in them being able to cause shiny skips.

Update the VerifyNPC method to remove tsv check, as it's just repeating the logic we've done in the lock generator.

Added a test method that can be stepped through; compare the team results manually since they aren't exposed for interaction.

Closes #2751 , big thanks to @ijuintekka for being so detailed in their investigation/report!

Co-Authored-By: ijuintekka <ijuintekka@users.noreply.github.com>
2020-03-11 19:18:58 -07:00
qhq
b799819131
Update text_Forms_zh.txt (#2753) 2020-03-11 18:18:27 -07:00
Kurt
efc0a9bcc4 Ban HA Pumpkaboo/Gourgeist Small/Large
Co-Authored-By: Lusamine <lusamine@users.noreply.github.com>
2020-03-11 17:38:01 -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
0aa6282d73 Sanity check value types via generic method 2020-03-11 16:31:53 -07:00
Kurt
f9bbeba3ad Add get/set for swsh current box
Closes #2742

Co-Authored-By: Matt <sora10pls@users.noreply.github.com>
2020-03-10 23:18:51 -07:00
Kurt
eccfb61839 Update BallVerifier.cs 2020-03-10 22:59:46 -07:00
Kurt
9dbc3cd418 Permit galar native species to inherit past-gen balls 2020-03-10 17:53:56 -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
qhq
5d63235dee
Update LegalityCheckStrings_zh.txt (#2752) 2020-03-06 05:54:13 -08:00
Kurt
d7cebb9d0c
Update LegalityCheckStrings_es.txt (#2750)
Making some changes on the previous strings update (not putting away Phoenix's effort tho!)
2020-03-05 10:59:32 -08:00
Kurt
116962317c
Update LegalityCheckStrings_es.txt (#2748) 2020-03-05 08:01:42 -08:00
Kurt
ed02f39224 Use another overload
Co-Authored-By: Archit Date <architdate@gmail.com>
2020-03-04 22:31:07 -08:00
Kurt
4c226340fe Add shiny sprites, alcremie sprites & big sprites for all
Keeping the 30x40 for now; might change my mind later.
Kept the gmax sprites but they're unused.
2020-03-03 20:22:57 -08:00
Kurt
7919beaddc Filter out duplicate moves 2020-03-03 18:23:00 -08:00
Kermalis
5a89c6af4c
Gen 3 Flags (Remastered!) (#2744) 2020-03-02 16:44:52 -08:00
Kurt
a83556d612 Heal x->pk8 converts 2020-03-02 16:32:23 -08:00
CanoeHope
e51df9855d
Add blocks for NPC and Friend League Cards (#2741)
* Add blocks for NPC and Friend League Cards

* Update SaveBlockAccessor8SWSH.cs
2020-03-01 00:47:56 -08:00
Kurt
4fb33413e3 Only set display shiny of not owned
Closes #2740 ; we don't want to set display shiny if it's not shiny

we only want to set display-shiny if (!owned && shiny)

Co-Authored-By: canoehope <canoehope@users.noreply.github.com>
2020-02-28 17:35:50 -08:00
Kurt
d80d1598dc Only set displayed form if not previously owned
Closes #2739
2020-02-28 15:31:26 -08:00
Kurt
d58426ebf5 Hide affection fields, remove setters for unused
#2738
2020-02-27 20:53:33 -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
Matt
0b5116f567
Add Battle Frontier + Facilities to Valid HGSS Met (#2735)
Accessible in Pt/HGSS, but not DP.
Closes #2734
2020-02-25 13:15:50 -08:00
Kurt
549e6f616b allow shared eggmoves on format 2020-02-22 23:27:47 -08:00
Kurt
d93b603a31 Merge branch 'master' of https://github.com/kwsch/PKHeX 2020-02-22 19:47:28 -08:00
Kurt
e378821101 Remove duplicate key item list for pc items
Closes #2733

Co-Authored-By: kermalis <kermalis@users.noreply.github.com>
2020-02-22 19:47:25 -08:00
Kermalis
441a60a2fb
Some gen 3 flags (#2732) 2020-02-21 21:42:34 -08:00
Matt
7cb80fdbc5
Update GO Shiny Banlist (#2731)
- Valentine’s Day Event (Chansey)
- Raid Day (Lickitung)
- February Community Day (Rhyhorn)
2020-02-21 19:40:10 -08:00
Kurt
5240e67a14 Revert "Loop shiny force regardless of format"
This reverts commit cc8e5d9c32.
2020-02-21 15:02:16 -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
4771158194 Remove ribbon check for mew
- Data is set to give a Classic ribbon
- The classic ribbon isnt ever applied
- nor does a transferred pb7->pk8 get it

so just remove the interface and treat it as unused (cuz it is, unused.)
2020-02-20 21:43:02 -08:00
Kurt
4116fb5b9b Fix sprite format for gen3
Closes #2725

Fix crash if canceling the FRLG version select

Co-Authored-By: Kermalis <kermalis@users.noreply.github.com>
2020-02-20 19:36:06 -08:00
Kurt
03c58dbe89 Use selected language instead of sav lang 2020-02-19 21:32:01 -08:00
qhq
8b94794115
调整细节 (#2720) 2020-02-17 20:22:36 -08:00
Kurt
66efbaf407 Add box manip for heal all slots 2020-02-17 19:28:20 -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
0e2734d2d5 Add evo data for alolan raichu / weezing
Ban the evolution methods since they can't be triggered in-game
allows the gen8 evo tree to reverse evolve past gen specimens
2020-02-16 18:16:22 -08:00
Kurt
ee38e6890b Disallow gen7 ribbons on lgpe origin 2020-02-16 17:41:38 -08:00
Kurt
f48a11f013 add 2/17 raids
milcery gone, toxel appears
2020-02-16 17:02:53 -08:00
Kurt
fc9d0b4b24 Add hint for pkm with dummied moves
Closes #2716
2020-02-16 12:17:36 -08:00
Kurt
cc8e5d9c32 Loop shiny force regardless of format
https://github.com/kwsch/PKHeX/issues/2717#issuecomment-586741748
2020-02-16 11:46:06 -08:00
Kurt
0d4cff81c6 Clean 2020-02-15 14:29:23 -08:00
Kurt
5e65df6758 Update egg ball check for galar non-natives
pretty rough check, but flags the old starters in bad balls now
2020-02-15 14:22:37 -08:00
Kurt
21eb9cb499 Remove gen7b trade evo if HT present requirement
lgpe->HOME->lgpe can set the HT details, but it isn't a trade.
2020-02-15 13:43:58 -08:00
Kurt
3e4bb9f320 Ignore keldeo resolute form check on gen8+
can mismatch in gen8+ as the form activates in battle when knowing the move; outside of battle can be either state.
2020-02-15 13:30:50 -08:00
Kurt
9e16df4970 Only check g6 contest ribbon affection in g6/7
Affection is discarded on PK7->PK8 in favor of friendship, which can be lowered.
2020-02-15 11:43:21 -08:00
Kurt
b9e3ddf612 Disallow regular slowpoke
Closes #2708
Can't be moved into the game (no sprites yet).

To be removed or handled a better whenever DLC comes out.
2020-02-14 14:52:05 -08:00
Kurt
9efaae0df6 Remove unneded property copy
eggs didnt exist in lgpe, would be all zero anyways
memories copy in pk7, remove todo
2020-02-14 14:48:48 -08:00
Kurt
ae0777018c Update PB7.cs
Co-Authored-By: Chris Feger <piepie62@users.noreply.github.com>
2020-02-14 11:48:13 -08:00
Kurt
d560fbcf7f Fix typo
Co-Authored-By: Chris Feger <piepie62@users.noreply.github.com>
2020-02-13 21:00:07 -08:00
Kurt
0c83c48cef Add MrMime-1 check for past gen origin
permit mime jr evolving to mr mime-1
2020-02-13 20:00:41 -08:00
Kurt
f62b6e33f3 handle alolan meowth origin in gen8
https://projectpokemon.org/home/forums/topic/56267-checks-associated-with-events-or-forms/
2020-02-13 17:05:06 -08:00
Kurt
3ce590aca8 Don't clear FormArgument on set to box slot
Closes #2706
removal of isParty prevents the erroneous force-0 behavior

Co-Authored-By: Russell Jones <questiondesk@gmail.com>
2020-02-13 16:35:37 -08:00
Kurt
c855bb8bcc Expose method for reuse in other projects 2020-02-12 20:42:45 -08:00
Kurt
75d8635580 Fix lgpe moveset restriction
Closes #2704

Co-Authored-By: BetaLeaf <betaleaf@gmail.com>
2020-02-12 20:25:39 -08:00
Kurt
6346444db7 Extract home tracker to interface 2020-02-12 18:52:48 -08:00
Kurt
3d6846eb3e Permit more HA breeding
Remove non-galar species from gen8 banlist
Add Ban_NoHidden8Apricorn -- all of these aren't even breedable in-game anyways, but futureproof for DLC? ;)
2020-02-12 18:40:41 -08:00
Kurt
258993ad0c Flag missing tracker regardless of setting 2020-02-12 18:29:47 -08:00
Kurt
6ef2950cc4 Add toggleable flag setting for tracker, update translations 2020-02-12 18:14:23 -08:00
Kurt
63044cd3f9 Add tracker unique text & setting 2020-02-12 18:10:24 -08:00
Kurt
e77fa205a0 Add tracker editor 2020-02-12 18:10:03 -08:00
Kurt
fd4690714e Add duplicate tracker SAV check 2020-02-12 16:37:59 -08:00
Kurt
9f6d234c53 Fix hgss box wallpaper read
lol oops
Closes #2698

Co-Authored-By: ammako <ammako@users.noreply.github.com>
2020-02-11 23:24:03 -08:00
Kurt
d3c060e1d4 Add pt flags
Closes #2699

Co-Authored-By: FeralFalcon <feralfalcon@users.noreply.github.com>
2020-02-11 23:21:21 -08:00
Kurt
3e9262efbb Only check memory feeling restriction if gen6
dunno restrictions for gen8 memories.
2020-02-11 22:25:50 -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
d97db1cc40 Allow pk7->pk8 pikachu cap transfer 2020-02-11 20:36:10 -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
435953f4e1 Don't transfer locale 2020-02-11 19:04:00 -08:00
Kurt
217156d2b9 Continued comparisons & implications
pk7->pk8 doesnt assign height/weight (zero), require zero for legal
p*7->pk8 assigns a tracker value, enforce something is present for legal
copy OT friendship (oops)
2020-02-11 18:35:54 -08:00
Kurt
332f92f5e9 Update p*7 transfer logic
Add scalars & stat natures

Do note: there is more data that is set and can potentially be used to flag you for cheats. Beware.
2020-02-11 18:05:07 -08:00
Kurt
7523639b48 Unbanana galar transfers
Initial restriction removal, probably more implications

Need to reverse transfer logic
2020-02-11 17:29:10 -08:00
CanoeHope
29814d4251
Change FRLG hatch location (#2700)
Better location.
2020-02-11 15:39:27 -08:00
CanoeHope
7ab128de89
Add SwSh Birthday blocks (#2696)
Because the Switch doesn't have a feature to internally store your B-day like the DS and 3DS does, you set it in-game by the "Fortune Girl" right in front of Wedgehurst's PokeCenter in month and day.
https://www.serebii.net/swordshield/birthdays.shtml
2020-02-10 18:14:20 -08:00
CanoeHope
d3a284699f
Change Gen 5 hatch location (#2695)
Skyarrow Bridge is more popular to hatch at legitimately.
2020-02-10 12:52:55 -08:00
CanoeHope
acb9cc2a9d
Add Gender to Gen 8 Trainer Card (#2694) 2020-02-10 12:02:52 -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
b94430a89f Ban bred HA voltorb in beast ball
https://projectpokemon.org/home/forums/topic/56212-legality-ha-voltorb-in-beast-ball/
https://www.reddit.com/r/BankBallExchange/comments/7boi0h/new_apricorn_and_beast_ball_combinations_for_usum/dpwu5in/

ty Prophet丶W
2020-02-08 20:24:02 -08:00
Kurt
4656978a43 Enforce toxtricity encounters to have restricted nature 2020-02-08 15:08:12 -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
8e5876b96f Expose item->form methods 2020-02-07 21:34:25 -08:00
Kurt
48bc4ec8fa Don't yield twice
oops lol
2020-02-07 21:34:05 -08:00
Kurt
6d24905a7d Update hypertrained IVs on export
Don't indicate flawed IVs; just pre-compute the hidden power type.
Remove unnecessary language logic (not needed due to prior commit)

Optimize string concat to a single interpolation, because it's totally a performance improvement!!!1
2020-02-07 17:50:42 -08:00
Kurt
9ffac4382a Replace gender symbols for nidoran with -M/F 2020-02-07 17:42:28 -08:00
Kurt
1cd23e6587 Don't include language name as nickname on set export 2020-02-07 17:42:16 -08:00
Kurt
1bf22467de Add Rental Team (gen8) reader 2020-02-07 17:23:26 -08:00
Kurt
d52366b0d5 Add download rules/comp block labels
https: //projectpokemon.org/home/forums/topic/56121-swsh-blocks-and-save-research/
Co-Authored-By: pp-theslayer <pp-theslayer@users.noreply.github.com>
2020-02-07 16:32:05 -08:00
Kurt
a73f14836d Add HoF time block accessor object
Not gonna add it to the interface
Closes #2691

Co-Authored-By: canoehope <canoehope@users.noreply.github.com>
2020-02-07 15:59:36 -08:00
Kurt
c08cf9c95f Add rental team hashes
Co-Authored-By: Archit Date <architdate@gmail.com>
2020-02-07 15:33:53 -08:00
Kurt
7866958af8 Add dynamax crystal type, exclude from activation
Closes #2690

Co-Authored-By: slp32 <slp32@users.noreply.github.com>
2020-02-07 10:16:27 -08:00
Kurt
6e5ef9667f Add female gender check for stadium
Closes #2687
2020-02-06 21:25:13 -08:00
Kurt
cc05a38548 Clear team slots on blank load
Closes #2688
2020-02-06 20:11:58 -08:00
Kurt
cdd4cb33b2 Add togepi hgss const
Closes #2689

Co-Authored-By: asterysx <asterysx@users.noreply.github.com>
2020-02-06 19:36:47 -08:00
Frank
e5286f3325
RaidSpawnList8 fix DenType and Flags (#2686)
* RaidSpawnList8 use enum RaidType for DenType

fix IsWishingPiece and add WattsHarvested

* Add check between RaidType.Event and IsEvent flag
2020-02-06 17:12:26 -08:00
Kurt
29258ca501 Add tox nests 2020-02-06 17:11:39 -08:00
Kurt
a004b301d0 Add record count incrementing for sav8
Closes #2685 ty @CanoeHope
2020-02-05 19:42:46 -08:00
Kurt
81c78be8c7 Change default gen7 hatch location
ty @CanoeHope #2685
2020-02-05 19:42:22 -08:00
Kurt
bc45660f99 Update legal raid clamp
https: //github.com/kwsch/PKHeX/issues/2681#issuecomment-582215498
Co-Authored-By: slp32 <slp32@users.noreply.github.com>
2020-02-04 19:06:33 -08:00
Kurt
d3d6225a73 Fix unown ?! order
Closes #2683
ty @Kermalis !
2020-02-04 19:03:55 -08:00
Kurt
5ac9782320 Form check wild unown
Closes #2682
2020-02-04 17:38:35 -08:00
Kurt
2e1528b199 Merge branch 'master' of https://github.com/kwsch/PKHeX 2020-02-04 16:55:42 -08:00
Kurt
7e6cae4004 Clamp activating raids to available indexes
Closes #2681
2020-02-04 16:55:40 -08:00
Yurical
a4e579c49b
Update Korean translation (#2680) 2020-02-04 07:36:40 -08:00
CanoeHope
9b172d2666
Correct Day offset (#2679)
a1ae14325a (commitcomment-37103852)
2020-02-04 07:35:02 -08:00
Kurt
867f62c555 Check multi lang stadium OTs
Closes #2671
really wish the gen1-3 event data was serialized ;)
2020-02-03 20:10:07 -08:00
Kurt
bdf6afd2f3 Fix egg trainer name logic for wc3
Closes #2676
2020-02-03 19:22:16 -08:00
Kurt
0e1fd49be1 Decrement runtime language if appropriate
Closes #2674
2020-02-03 19:16:30 -08:00
Kurt
a1ae14325a Add more block documentation
Ty @CanoeHope !
Closes #2677

To edit these values, use the Block Data editor and select the *Object Trainer Card

Co-Authored-By: CanoeHope <canoehope@users.noreply.github.com>
2020-02-03 18:56:35 -08:00
Kurt
522dbdbe32 Flute boost/decrease 3->4
Closes #2678 ty @Rayqo
dat level 1 wild pokemon 👍
2020-02-03 18:40:31 -08:00
Kurt
b31f0428cf Add raidtype docs & wishing piece indication 2020-02-02 10:21:34 -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
43036e7e94 Add team index recognition
lock by default until we find the location that locks team slots
2020-02-01 18:56:23 -08:00
Matt
cbf6c1e1b6
Unban Star Sweet and Ribbon Sweet (#2670)
Item drops from the new Milcery distribution Raids.
2020-01-30 19:30:17 -08:00
Kurt
774dec5123 Add milcery distro nests 2020-01-30 16:44:51 -08:00
Archit Date
c8a16a1f71
fix yamask/runerigus form handling (#2669)
fixes #2668
2020-01-29 16:11:56 -08:00
Kurt
b35d53368f Sort blocks by initial value
allows some lumping of similar-value blocks for easier analysis
2020-01-28 19:08:26 -08:00
Kurt
dd07126d83 Relocate level suggestions to EncounterSuggestion 2020-01-28 16:21:38 -08:00
Kurt
ee5c033b51 Add dlc block annotations
ty @pp-theslayer
https://projectpokemon.org/home/forums/topic/56121-swsh-blocks-and-save-research/

add another array detail
2020-01-28 16:21:11 -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
a3e9649f09 Update 20.01.26
Update with latest events from EventsGallery
2020-01-26 00:35:31 -08:00
Kurt
f0fb6a2371 Play with living dex gen a little
generate altforms too, store in a list
2020-01-25 22:54:25 -08:00
Kurt
c301ce88ab Update Random to be a bit more thread safe
Random isn't thread safe; users of PKHeX.Core.dll might run multithreaded operations (see PKSM + ALM), so we need to have a thread-specific RNG available.

Thread Local get; to improve performance, save the random object locally whenever it is used more than once in the method.

https://docs.microsoft.com/en-us/dotnet/api/system.threading.threadlocal-1?redirectedfrom=MSDN&view=netframework-4.8
https://stackoverflow.com/questions/18333885/threadstatic-v-s-threadlocalt-is-generic-better-than-attribute/18337158#18337158
2020-01-25 21:49:52 -08:00
Kurt
edc95efe95 Add 2 more b2w2 flags
Closes #2661
Add more clarification for kyogre/groudon const value; not gonna re-localize myself :P
2020-01-25 18:09:27 -08:00
Kurt
9b062bc770 Remove unused legality check strings
Fix spanish translation messages not being loaded
2020-01-25 17:37:47 -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
b5d48bc14f Split up portions of CommonEdits
Cuts out about half the size; there's still a bunch of apply-value logic but it's not really big enough for a separate class.

Rename BallRandomizer->BallApplicator
2020-01-25 16:47:44 -08:00
Kurt
88dcb59798 Extract language initialization to core
Call this method whenever you boot a separate app that needs legality strings to be ready.
2020-01-25 16:27:16 -08:00
Kurt
3813d5dba9 Readonly init EvolutionMethod
Add xmldoc
2020-01-25 15:42:17 -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
527442bb49 Only fetch strings when required for compat check
if item == 0, don't bother checking. Fetch strings only if there's an issue with the item.
2020-01-25 12:16:45 -08:00
Kurt
63ee520e75 Fix de ribbon name missing 2020-01-25 10:17:02 -08:00
Kurt
c730dfa1ba Remove empty ushort[1], improve item combo fetch
held item list now allocates less (concat arrays instead of ienumerables)
item list already prunes out of range items, so simplify data source fetch
simplify item list prune (return as list, so we can call RemoveAll instead of Where.ToList)
2020-01-24 23:29:45 -08:00
Kurt
6dddb0526f Fix starter order
Closes #2660
2020-01-24 20:18:26 -08:00
Kurt
f50ee0f18e Update gen3/4 event flag lists
Closes #2659 ty @FeralFalcon !
2020-01-24 18:13:23 -08:00
Kurt
9b6a10df46 Extract metadata-reflection class to PKHeX.Core
separate GUI logic from non-gui logic :)
2020-01-24 17:57:47 -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
92d1ccf3d9 Fix Pokewalker course unlock all
write to correct location
https://projectpokemon.org/home/forums/topic/56084-pokewalker-courses/
2020-01-24 17:10:53 -08:00
Kurt
46156b48c6 Add missing generation to accessor type name
Now matches Interface declaration style (iAccessorGenGame), and is consistently named with the other accessors already using the same naming style
plus they are now ordered in the file tree :)

no functional change
2020-01-23 23:22:54 -08:00
Kurt
fb02295c70 Use object block names in diff 2020-01-23 23:19:38 -08:00
Kurt
12244909ba Split off SCBlock-logic from SWSH accessor
In case a future game uses this same setup.
2020-01-23 23:16:09 -08:00
Kurt
2adbca628b Add raw value edits
Not done for Array types or Object types
muh reflection, such spooky

mark Offset as non-browsable so it doesn't show up in propertygrid if the block is being edited by a grid :)

I imagine a struct-type-sensitive array property grid edit could be done via Buffer.BlockCopy to a dest array, but there's so few Array blocks... so meh
2020-01-23 21:30:39 -08:00
Kurt
99baa171f4 Indicate known block types at top
Uses reflection to grab a list of defined constants (block keys), and a list of defined block reader classes.

Show name of block in red for a more prominent hint that this block is somewhat editable :)
2020-01-23 20:11:39 -08:00
Kurt
a88c7c4800 Add more trainer card/status fields & stats
Closes #2658 ty @CanoeHope !
Mostly just serves as documentation; with the amount of fields being editable increasing, hard-coded GUI might not be optimal here. I'm thinking something like a PropertyGrid based on the selected block which will pull up the Block object if the key matches... for fields, something like a dynamically populated list or something.
2020-01-23 18:31:10 -08:00
Egzon
a5985536e2 Miscelanous fix on Underground Scores (#2657)
* UG scores are uint32, with max value up to 999999.

* fixing label position

* another positioning fix!
2020-01-23 16:37:39 -08:00
Kurt
ecfcbbc4cb Verify full raid result with known seed 2020-01-23 00:11:07 -08:00
Kurt
467045e95c Swap rand call order, rename as overload 2020-01-22 19:04:20 -08:00
Kurt
ba5cc26e83 Add indication to which blocks changed
Use reflection to grab all const declarations (private and public), and grab the name of that const. Whenever that block is mentioned in our diff, use the name instead of the key.

Helps identify what changed / remove noise if you don't care about that block.
2020-01-22 17:06:23 -08:00
Kurt
4ea2be250f Add TitleScreen8 and Trainer Card team structs
Closes #2653 , ty @CanoeHope !

Editable from the Trainer Info button, comes with a Copy From Party button for each.
2020-01-21 23:23:27 -08:00
Egzon
9cce65e937 Fix Subway Super checks (#2652)
Oops, it's actually a byte...
2020-01-21 11:00:09 -08:00
Kurt
d9c162b5cf Fix criteria comparison
Closes #2651
2020-01-21 09:05:39 -08:00
Kurt
5be9c6bcc8 Remove unnecessary null handling
objects are no longer null
2020-01-20 23:32:05 -08:00
Kurt
5bb51b07ac Check Footprint Ribbon for gen8
gen7 used same as gen6, we just need to restrict gen!=8
add placeholder LGPE origin check; that'll likely throw a wrench into things when HOME happens (next month?).
2020-01-20 23:09:28 -08:00
Kurt
b84cae9ff5 Fix box name write for sav8swsh
only used via the view-all-boxes popup when switching boxes
ty anubis!
2020-01-20 22:04:52 -08:00
Kurt
6fdc71b2e4 Update tower record set
Record ID const declaration for reuse
Change 255->300 for streak max
Set record as well (ignore currently set value if modified via dropdown)
Closes #2649

Not sure if Money and BP can get a similar record-set treatment.
2020-01-20 18:16:46 -08:00
Egzon
1a3d8b1fab Fix Seedot and Nuzleaf swarm moves (#2648) 2020-01-20 14:31:59 -08:00
Archit Date
117bb35621 handle smogon sets with multiple moves (#2647)
sometimes competitive sets have multiple moves in one slot as optional coverage moves. Handle these cases by splitting and trimming over '/'.  Example: https://pastebin.com/raw/jvPziRdC (The dusk mane set)
2020-01-19 22:30:09 -08:00
Kurt
40e5cd66da Add block diff for swsh, add bool type toggle
Apparently my copypaste of the class didn't delete all the old unused controls. Ha!

Move non-gui logic to core as separate classes, in case ppl wanted to reuse them in their own projects.
2020-01-19 22:29:50 -08:00
Kurt
d788af45cd Unban HA mimikyu
Only one encounter for mimikyu = A4 }, // Mimikyu
Update manual banlist to permit it
Closes #2646
2020-01-19 19:02:53 -08:00
Kurt
a98ca2351d Don't SetValue to block if not exportable
blank saves do not have the type metadata for the blocks that are spoofed, nor do they have all blocks spoofed.

I suspect things might get more difficult as more value-blocks are identified, which would throw a wrench into things. We'll figure that out at that time :)

Add a test to ensure that the blank save can be created correctly

Closes #2644
2020-01-19 10:25:40 -08:00
Kurt
4567bba03f More elegant block read/write
Removes TONS of unnecessary allocations, and is more simple
2020-01-19 00:55:10 -08:00
Kurt
0244cc7489 Add more info to exception message
Closes #2644
2020-01-18 19:44:34 -08:00
Egzon Qukovci Jusufi
ab5016bf7d Add Subway Scores edition (#2643)
* Add Subway Scores edition

* Changing the offsets handling

Simply use the block offset as the base and add them to it. Also allow edition on B2W2.
2020-01-18 19:31:36 -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
643c0c1cc7 null/empty check -> check both 2020-01-18 17:33:19 -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
Kurt
0cd9c47953 Make Relearn array for encounters readonly
No change em
2020-01-18 16:31:24 -08:00
Kurt
40c2c483fb Common1-3 => Bool1-3
Blocks that use Bool1/2 toggle to the other state; evident when comparing between two different saves. The key doesn't change, only the Type is toggled.
2020-01-18 14:19:01 -08:00
Kurt
9b0b0cb1a6 Add misc value r/w for trainer8
Closes #2639
casting object to generic T : struct isn't valid, so just cast the get/set appropriately
2020-01-17 23:25:02 -08:00
Kurt
2a7d475b5b Rearrange key list, add syntax sugar methods 2020-01-17 21:53:51 -08:00
Kurt
e4e1681e1c Clamp roto rally score to 99_999
https://github.com/kwsch/PKHeX/issues/2639#issuecomment-575863541
2020-01-17 21:09:54 -08:00