Commit graph

549 commits

Author SHA1 Message Date
Kurt
f5e595772d Add more sav7 properties 2017-10-14 23:47:16 -07:00
Kurt
331d6ec6a0 Sync missing file
#1523
yeah lol
2017-10-14 16:48:43 -07:00
Kurt
fa310e8c4e Add gen6 map mirror coordinate changing
not sure what they do but the values should match
Closes #1523
2017-10-14 16:32:34 -07:00
Kurt
a11b6f4a60 add recent de strings as resource
now load instead of not at all
2017-10-13 22:40:34 -07:00
Kurt
6f69ce11b5 Merge pull request #1522 from Korados/master
German Translation for Gen1-3 item strings
2017-10-13 21:36:10 -07:00
Korados
ef6a7827bf Create text_ItemsG3_de.txt 2017-10-14 01:34:15 +02:00
Kurt
0120263bd3 Cute Charm gender ratio changing edge case
Thanks @Admiral-Fish !
2017-10-12 23:18:43 -07:00
Korados
8e5299dcae Create text_ItemsG2_de.txt 2017-10-12 23:39:47 +02:00
Kurt
43d1c7740f add event flag localization
rename files for english indication
allow script text retrieval with current language

simplify resource retrieval a little
2017-10-11 20:00:18 -07:00
Kurt
90e8f571b9 move event script resources to separate folder 2017-10-11 19:34:48 -07:00
Kurt
02c06d154b Split item cap for usum prep 2017-10-10 19:30:55 -07:00
Kurt
c3c4336d43 Add gen3 roamer editor
Thanks BlackShark!
2017-10-10 18:48:14 -07:00
Korados
8e10aab76f Create text_ItemsG1_de.txt 2017-10-11 02:40:09 +02:00
Kurt
79ede6a212 Add gen3 roamer r/w 2017-10-09 21:00:36 -07:00
Kurt
78a557c3cd misc tweaks
simplify some linq usage
2017-10-08 22:14:47 -07:00
Kurt
9f2ade5b14 Add japanese gen1-3 ingame translation data
Thanks @smileynation!
2017-10-08 18:07:49 -07:00
Kurt
b63e444e15 Add hatch location check for static egg gifts
to match mysterygift check
2017-10-08 14:48:35 -07:00
Kurt
c256786467 Change encountertype ja encoding to Unicode
UTF-8 => Unicode
2017-10-08 13:41:44 -07:00
Kurt
50dfa3603e fix 50/50% male/female gen1/2 7 ATKIV
ma boi nixhex with wrong info at smogon
http://www.smogon.com/ingame/guides/rby_gsc_stats#gender

bulbapedia is right
https://bulbapedia.bulbagarden.net/wiki/Individual_values#Gender

Thanks StarFisherX for bringing this to my attention!
2017-10-07 20:42:51 -07:00
Kurt
bee64b495b Remove gen2 auto resizing jpn saves
introduced in the start of sav2, removing doesn't seem to have any
consequences

a3250a0d56 (diff-c6536dcc6b76e8415f41529d664b75d9R24)

closes #1516
2017-10-07 16:46:09 -07:00
Kurt
4b135902f3 Allow EV yields for gen1/2 untrained
abusing daycare

https://projectpokemon.org/home/forums/topic/41788-pk2-gets-dinged-for-having-too-many-evs-at-starting-levelxp/
2017-10-07 08:23:05 -07:00
Kurt
c7dfc3d9b0 Cleanup
union / count usages
remove unnecessary stuff
2017-10-06 21:03:23 -07:00
Kurt
762b55e957 handle invalid nature stat amps
natures (>25) are invalid and causes IndexOutOfRangeException due to
being greater than the length of the array.
sanity check array length and amped stat prior to applying amplification
Closes #1515
2017-10-06 18:44:14 -07:00
Kurt
a816f4cea6 Misc event egg tweaks
Thanks Kirzi!
2017-10-05 23:13:48 -07:00
Kurt
059451d66e misc tweaks
dictionary species check, max deviation beginnings for USUM
simplification for gen1/2 pokemonlists
2017-10-05 22:37:45 -07:00
Kurt
413cfddb6c Misc tweaks
fix ranch pkm hacks being treated as valid (wrong severity)
fix xml docs relative to recent changes
move kata/hiragana charmapping to be like the Farfetch'd alias
{"'", 0xE0}, // Alias ' to ’ for Farfetch'd
{"’", 0xE0},
2017-10-04 17:21:51 -07:00
wwwwwwzx
384605b127 Misc gen1/gen2 fixes
- G1/G2 only have Hiragana letter he -> fixed Houndoom(ヘルガー) /Heracross (ヘラクロス) default name mismatch
- Fixed Stadium2 Farfetch'd move (Thrash -> Slash)
- Added VC Mew TID check
- Update Chinese legality strings
2017-10-04 00:14:50 -07:00
Kurt
b5e3b616de nickname edge case
evolved on a foreign language can't rely on stored language ID, have to
detect it
2017-10-03 19:21:17 -07:00
Kurt
6bd0e7ce72 sync remaining
pls revoke my access
2017-10-03 18:20:31 -07:00
Kurt
ea751e26b1 Convert chinese string only if species name
Resolves charmap duplications in the chinese char tables:
多边兽Z (Porygon-Z)
属性:空 (Type Null)
谜拟Q (Mimikyu)
卡璞・鸣鸣 (Tapu-Koko)

Games cannot have a nickname/OT in chinese as of current date... I
assume this will be fixed down the road
2017-10-03 18:15:15 -07:00
Kurt
df287f8fc5 Fix concatbinary load
Closes #1509

I think I had two ideas on how I wanted the method to work and
incorrectly blended the two together.
2017-10-03 16:51:13 -07:00
Kurt
b7b449e65c Add move length check
Closes #1507
2017-10-03 16:44:12 -07:00
Kurt
ec491cdd52 Fix sav2 badge/tmhm clearing
Closes #1505
Thanks @fattard !
2017-10-02 23:17:00 -07:00
Kurt
a9892203c7 Refactoring
extract pkm loading routines to smaller methods
reduce code duplication (rely on empty setters to ignore some calls)

should be much easier to understand the load/save process; the original
setup (pk6) was following the structure from 0x00-end, no point still
doing that as everything is now abstracted.
2017-10-02 23:13:40 -07:00
Kurt
b23658dee1 Misc tweaks
allow cute charm static encounters
ignore user-entry control types
2017-10-01 21:25:23 -07:00
Kurt
44c0b53852 Provide map for Z Crystals KeyItem->HeldItem
allows for loading sprites for the key items (they're smaller than the
key item but better than missingno sprite)
Closes #1504
2017-09-30 20:57:32 -07:00
Kurt
3300afdd19 More gen1/2 str encoding updates
Thanks theSlayer!

i blame rhydon
2017-09-30 18:20:23 -07:00
Kurt
593f31ff02 hashset contains over array contains
faster++, reduces some linq ToArray() allocations
2017-09-30 14:08:35 -07:00
Kurt
3552e6396c Move pidivmatches check outside secondary check
gen3/4 generators auto-defer bad PIDIVs to end, so no need to keep
skipping to the very end
2017-09-30 13:42:57 -07:00
Kurt
e6f43ff629 Add 6 gen2 jp characters to encoding list
?!ゥェォ and space
other half-width characters are already present
2017-09-30 11:18:08 -07:00
Kurt
b201ded8e8 Fix エ decapping to ェ
Both characters map back to character 0x83, but 0x83 previously mapped
back to the lowercase variant which was unlike the others.
(オ and ォ -> オ)

Thanks Afepoke & smileynation!
2017-09-30 09:37:09 -07:00
Kurt
32bbd2cee0 old cleanup
revisit comboitem providing, simplify some methods with fancy linq
probably faster as there's no use of dictionaries and Array.IndexOf
after sorting, as the values are kept with the text.
2017-09-30 01:07:30 -07:00
Kurt
1e377c2963 interpolation++
no functional change (assumed)
2017-09-29 22:58:25 -07:00
Kurt
a93a3897b3 Cache pgt/pk4 when read from gift file
speeds up repeat accessing (legality checks and mgdb opening)
2017-09-29 22:40:35 -07:00
Kurt
ce4e5f739e Fix korean Gold/Silver saving
closes #1496
2017-09-29 19:13:03 -07:00
Kurt
ed1b934374 Misc refactoring
expose some useful IEnumerable methods (sorting / bin->pkm / copy) to
simplify some common operations
change some explicit arrays to IList for flexibility
remove old memecrypto bool (no longer necessary as XP is not supported)
rename some methods for more clarity
2017-09-28 22:20:27 -07:00
Kurt
212a489335 Add gen6+ link trade egg edge case
slakoth with play rough with x/y version
why u modify game origin when hatched???
2017-09-28 17:11:30 -07:00
Kurt
14697f47d3 misc simplifications
recognize 01 01 01 00 xd saves
simplify some detection to be easier to follow, less lines is nice too
2017-09-27 23:22:41 -07:00
Kurt
2c8e2176e9 Fix gen4 egg transfer egg location
Egg Location wasn't explicitly kept, only the 'faraway place' was kept.
Closes #1498
2017-09-27 19:39:30 -07:00
Kurt
a52f88dd5c Add ice punch feraligatr non-relearn link gift move
Thanks cicciochiave!
2017-09-27 08:32:35 -07:00
Kurt
c270479bf9 Show SID7 on hover
Closes #1494
2017-09-26 23:14:29 -07:00
Kurt
8b02f05bd5 Faster crc16 ccitt
insert lenny face here
>4x faster, relative speed is higher for larger input arrays
2017-09-26 23:10:31 -07:00
Kurt
9699cdefae Gen2 egg gift bypass fix
Gen4+ static encounter eggs could slide through the VC case
prevent empty moves from appearing before suggested moves (relearnbase
being empty)
2017-09-26 20:09:18 -07:00
Kurt
8d0af0bd5b Handle all gc remapped languages
good stuff genius sonority
2017-09-26 19:56:08 -07:00
Kurt
532cee406a Add gen1 overworld respawner 2017-09-25 23:06:16 -07:00
SciresM
4272ad56ae We know what Key 9 is for (Cap Pikachu).
Refactor for Memecrypto API incoming in the next few days.

Gonna add a public overload that takes in a memekey, to facilitate Local Wireless memecrypto.
2017-09-25 17:51:17 -07:00
Kurt
bbff1e086a relax RB/Y detection when no starter chosen
value is 0 until a starter is chosen
2017-09-24 16:58:19 -07:00
Kurt
4950909d97 Add Red/Blue vs Yellow savefile detection
use the player's starter choice species value :)
2017-09-24 16:36:51 -07:00
Kurt
ccf9cd2284 Update japanese translation
Thanks smileynation!
2017-09-24 14:44:27 -07:00
Kurt
499126f9a4 Update gen1/2 move fetch
recent commit changed GetEncounterMoves to return 4 always rather than a
variable size array; double check the output for actual movecount
2017-09-24 12:39:12 -07:00
Kurt
e166f1eaa9 Show gen3+ berry analogues on gen2
also change "Reset key" to "Reset Password" to be closer to the game's
prompt
2017-09-24 12:05:36 -07:00
Kurt
c0f5166184 Fix rtc reset key generation
money into 3 bytes => sum
psypokes only does the 2 lowest bytes, is missing the high byte
Closes #1490
2017-09-24 10:59:35 -07:00
Kurt
1b354624b1 Korean move validation fixes
Korean g/s cannot access gen1 movesets, so pruning gen1 was necessary.
Rather than rebuilding the array (slow), just futureproof the entire
method to not rely on '7' (in case this code is ever used on Gen8).
2017-09-24 10:52:39 -07:00
Kurt
9ef2016d35 Encounter Learnset move duplication fix
a level 15/16 magmar has leer/smog twice in its learnset (at level 1 and
at actual levels); returning just the 4 previous learned moves at level
15/16 yields duplicates for Smog. [Smog, Leer, Fire Punch, Smog | Leer,
Ember]. By ignoring moves already added, the true movepool is acquired

also fix TradebackType getting overwritten at the end of the method (in
case of nontradeback like korean/egg)
2017-09-24 10:36:16 -07:00
Kurt
e5d7a063af Fix jpn/kor pkm collision
OTname length is 6 in JP games and 11 in kor/eng
Thanks smileynation!

https://projectpokemon.org/home/forums/topic/41689-bug-reporting-japanese-name-of-kin-gin-version-vc-jpn
2017-09-24 08:36:10 -07:00
Kurt
496cc35f97 Fix mew male gender
Closes #1489
2017-09-23 22:44:54 -07:00
Kurt
12187a5128 Expose gen2 RTC resetkey
#1487

also expose gen1 event flags (well, the crappy ones at least)
constants/event_constants.asm
2017-09-23 22:13:48 -07:00
Kurt
16341b4d91 Add SPA/ENG Oct16 Diancie collision handling
Card 0525 was accidentally uploaded without the 3 flawless IVs setting;
sometimes when the internal event binary is built, the 3IV card comes
before the 0IV.

Play favorites with the 0IV.
2017-09-23 17:11:19 -07:00
Kurt
d8c2cdb8e3 Use EnumerateFiles over GetFiles in some cases
https://msdn.microsoft.com/en-us/library/07wt70x2.aspx

iterating as an ienumerable (ie not consuming the whole collection) can
be more efficient by not waiting for the whole collection
2017-09-23 17:02:28 -07:00
Kurt
7974943bcf Refactoring
slight simplification related to #1486
2017-09-23 16:24:22 -07:00
Kurt
caf25efb46 Add RTC ResetKey calc 2017-09-23 16:04:02 -07:00
javierhimura
ea86032480 Comments and a fix for AllowGen2Crystal function 2017-09-23 21:00:57 +02:00
javierhimura
153206be6c Merge remote-tracking branch 'remotes/kwsch/master' into VC1withVC2tradeback 2017-09-23 20:46:39 +02:00
javierhimura
f3743e490b Korean language restrictions
Restriction happens because Korean can not trade with non-Korean GB era games
- There is no Korean release for gen 1 pokemon, included VC
- With no gen1 pokemon means any Korean gen2 is Gen2_NotTradeback, that means no gen1 origin nor moves are Legal
- Crystal was never released in Korean
- Pokemon Stadium 2 was never released in Korean, that means no move reminder for gen 2 korean pokemon

- Generation 4 can not trade between Korean and not Korean games, but Korean games can use the palpark with any language

Chinese language restrictions
There is no Chinese release for gen 1 and 2 pokemon games, VC Chinese games are in Japanese
2017-09-23 20:46:10 +02:00
Kurt
4a467fcf43 Fix gen5 HA checking for male only species 2017-09-23 07:58:55 -07:00
Kurt
756f9bb8dc Allow gen7 ribbons on gen2 transfers 2017-09-23 07:54:31 -07:00
Kurt
89d7d45304 Simplify isnicknamedany
for gen2 korean edge case (use lang 8), and skip lang 0 (same as lang 1)
2017-09-23 06:50:46 -07:00
javierhimura
eda97f4b49 Do not allow gen2 preevolutions for VC1 pokemon in generation 7 2017-09-23 13:16:33 +02:00
javierhimura
f129701ee6 Do not allow gen2 evolutions in generation 2 for VC1 pokemon, gen2 preevolutions are allowed 2017-09-23 13:12:03 +02:00
javierhimura
efc60c3bf8 Change VC1 pokemon tradeback initial status to allow VC2 origin, there is no way to know if the pokemon was traded to gen7 after or before VC2 release
Do not allow gen1 evolutions for VC2 pokemon without gen1 evolutions or preevolutions
2017-09-23 12:58:46 +02:00
Kurt
76adfd62bf Fix korean nickname detection
extracted the GetNonNicknamedBytes method (used in SetNotNicknamed and
GetIsNicknamed)
korean strings are variable byte width so using max string length is
insufficient
2017-09-22 20:34:29 -07:00
Kurt
6e579abfc3 Misc changes
* allow gen2 to have evolutions on gen1 when transferred to gen7
(Core.cs)
* handle korean strings on transfer slightly better (pk2.cs)
* auto-set johto location when changing game ID
* auto-detect VC saves (all have extensions with .dat)

Closes #1478 , thanks @NinFanBoyFTW !
2017-09-22 17:54:43 -07:00
Kurt
91386e330a Unmark vc2 Johto location
removes " (-)" from the johto location
2017-09-22 16:23:39 -07:00
Kurt
3a90093cb1 Add unown altform 2->7 conversion
Closes #1476
2017-09-22 15:38:17 -07:00
Kurt
a21a70ee4c Fix gen2->7 encounter move args
#1476
suicune water gun
2017-09-22 15:33:33 -07:00
Kurt
561752dd4d Update 17.09.22
Update event binaries with latest from the Event Gallery
2017-09-21 18:04:30 -07:00
Kurt
496da9e4ab Add ranch ingame trades
debut of the long awaited EncounterTradePID class

gist to generate trades from folder (using LINQPad):
https://gist.github.com/kwsch/d778f1f63e4c393e5440dfb0e14cfcc3

Closes #1458 , although Mew/Phione's PIDIV method is unknown.
2017-09-20 21:28:29 -07:00
Kurt
a938a1bd9c Add wordfilter bypass search via database
regex matching takes a lot more time and is a cosmetic / easily fixable
issue (reset to no nickname / default OT).
Add a prompt to temp turn off those checks to drastically speed up
search (no regexes done).

Fix unsanitize for gen6 (should have been >= 6, aka starting with gen6)
2017-09-20 16:46:40 -07:00
Kurt
69e8c071f7 Misc tweaks (apostrophe & vc2 pre)
farfetch'd apostrophe mapping disabled for gen5 and prior
Closes #1474

flag gen2 new moves as not obtainable if transferred from RBY (VC1) as
they must be removed before transferring 2->1.
2017-09-20 16:19:50 -07:00
Kurt
7b6d393b2f Add Hong Kong to Taiwan countries list
Closes #1473
2017-09-20 15:18:33 -07:00
Kurt
1149845db5 Misc database fixes
Initialize move array for WC3 if none are present
Closes #1472
More gracefully handle invalid version pkms in a given format (gen5
origin version pkm on gen4 format no longer throws an exception).
2017-09-20 09:04:30 -07:00
Kurt
b63e53af95 misc tweaks
no functional changes
2017-09-19 23:19:22 -07:00
Kurt
ddb496692d Fix yellow starter pikachu catch rate check
Closes #1470
2017-09-19 22:55:05 -07:00
Kurt
c23cc81212 More usum prep
I think egg hatch location checking is wrong for traded eggs (see gen3
vs future games, origin game shouldn't change but could hatch ORAS egg
on XY at XY location?)
2017-09-19 21:35:30 -07:00
Kurt
fd8143cae4 Gen<=4 french nickname handling
Fix accented gen1-4 french pkm name retrieval

https://projectpokemon.org/home/forums/topic/41614-bug-2-errors-with-pokemon-platinum/

Thanks Asia81!
2017-09-19 21:27:01 -07:00
Kurt
772f7d9d87 Add gen3 fateful bypass
no flagging that it's missing (via ingame clearing), implying that it
was traded to RS to hatch.

Thanks @kamronbatman !
Closes #1469
2017-09-19 19:18:13 -07:00
Kurt
6611e874c3 more usum prep
species added requires the 'latest personal table' reference to be
USUM's; the other referencs for .SM are fine as there's no possibility
to have a species ID high enough for it to matter.
2017-09-18 22:36:06 -07:00
Kurt
298dc344cf Fix gen3 emerald badge setter
Closes #1452
the bitwise or treated it as an int, which wrote 4 bytes instead of 2,
thus overwriting 16 flyto flags
Thanks @sora10pls & @Tk77185!
2017-09-18 16:06:31 -07:00
Kurt
ad69420ad9 Update gen5 shiny PID generating
Closes #1460
https://pastebin.com/GgcMjmwd
2017-09-17 14:43:28 -07:00
Kurt
84cc366803 Swap markings in gen3
Closes #1463
2017-09-17 13:07:12 -07:00
Kurt
c07a36c333 Fix event flag get set
yay order of operations
also update prompt messages for more guidance
Closes #1464
2017-09-17 10:16:56 -07:00
Kurt
07d37efd67 Fix gen3 wc3 random version get
recently removed gameversion value segregation to 100+; just sanity
check <=CXD
#1460
2017-09-16 14:11:16 -07:00
Kurt
7efd771bf4 Misc refactoring
add docs, move some data fetching to more appropriate class
remove old XP memecrypto support handling, was previously removed due to
net standard/core split
refactor memecrypto to handle multiple save sizes (USUM won't be the
same size save file); placeholder -1 for USUM size
2017-09-16 11:38:58 -07:00
Kurt
eafc28422e Misc gen4 handling updates
Cross-game trading for egg locations (duh)
Volt Tackle AND Fakeout pikachu from yellow forest
Nidoran fullwidth handling in gen4

Thanks Britty!

https://projectpokemon.org/home/forums/topic/41407-pkhex-legality-errors-on-gen-6-updated/?do=findComment&comment=220094

Replicate gen4's string setter for the bigendian variant
2017-09-16 09:58:06 -07:00
lilymaniac
9e64f97d51 Update Korean translation 2017-09-16 19:57:18 +09:00
Kurt
aa3393e5b2 Misc languageID legality checking update
Checks for max language ID on transferred pkm (gen5 pkm on gen7 can't
have CHS/CHT etc)
handles edge case for JPN B/W ingame trades
update pk5->pk6 transfer logic to bump langID 0 to 1.
Thanks HaxAras & Britty for providing samples!
2017-09-15 17:43:31 -07:00
Kurt
5665481cab Reduce machoke trade minlvl gen1
Thanks Mewtwo!

https://projectpokemon.org/home/forums/topic/41636-ricky-machamp-unable-to-match-encounter
https://bulbapedia.bulbagarden.net/wiki/Kanto_Safari_Zone
2017-09-15 06:42:00 -07:00
Kurt
387d9375c3 Refactor split gender breeding logic
Inherit Levelup moves & hidden ability (gen5) issues addressed
2017-09-14 18:52:34 -07:00
Kurt
d286fe9731 Extract get/set event flag common SAV method
throw in a little docs
2017-09-13 20:37:18 -07:00
Kurt
73d547b04b Fix gen3 jp OT editing breaking jp detection
Thanks ajxpk!
2017-09-13 18:24:37 -07:00
Kurt
7d8a0e0287 Update kor offsets & r/w operations
Closes #1451 , was caused by empty party writebacks (was reading from
wrong offset
dex caught/owned offset was listed as 0x28AE in the thread, is at 0x2AAE
instead (-0x20 from seen)

should have correct offsets and handling now :)
2017-09-12 19:47:37 -07:00
Kurt
c55b3df939 Add nyx antishiny pidiv detection
( ͡° ͜ʖ ͡°)
2017-09-12 00:27:16 -07:00
Kurt
4f9dc69504 misc kor improvements
pk2 objects now detect if they are korean or not
2017-09-10 22:30:41 -07:00
Kurt
4bff4a5e79 Update kor chartable
0x0/0xB had duplicates, and ・・・ doesn't map well (3 chars vs 1)
2017-09-10 21:59:03 -07:00
Kurt
add2fef7a7 Add gen2 korean handling
hypothetical for now, feel free to submit PRs to fix anything that
breaks / was incorrect in the implementation
2017-09-10 19:56:21 -07:00
Kurt
1769bcd306 Add no-deferred early break for gen3
c627a86f said it added for both 3 & 4, but was only added for gen4.
2017-09-09 19:27:28 -07:00
Kurt
f4d8f6e560 Add generic Gen2 jp Emu save file support
+0x30 footer for RTC
2017-09-08 21:53:08 -07:00
Kurt
09bbd57eb7 Fix grammar of new lc strings
thanks @sora10pls !
2017-09-08 09:01:46 -07:00
Kurt
4b83fdbe2c Add preliminary VC2 legality checking
Surprisingly easy to toggle on
If VC, provide possible version the encounter was matched to (to
indicate GS vs RBY).
2017-09-07 23:53:12 -07:00
Kurt
e517b45e51 Add GSC version IDs (supposed)
This is speculation and for preparation purposes only
2017-09-07 23:38:57 -07:00
Kurt
fd2da22d3a Update PKMConverter internals
[insert lenny face here]
2017-09-07 23:18:04 -07:00
Kurt
ddf55ee75a Improve gen1/2 invalid string detection
also spit out recommended TID/SID for c/xd starters
Closes #1443
2017-09-07 21:42:05 -07:00
Kurt
311ea4bc50 Refactoring
relocate memory type detection tables out of MemoryAmie editor
remove casting reference to get text (invalid memories no longer throw
exceptions)
2017-09-07 17:46:21 -07:00
Archit Date
1123c24b0c Fix Gen4 Misc options when no Poketch is obtained. (#1448)
* Fix Gen4 Misc options when no Poketch is obtained.

closes #1447
2017-09-07 12:25:45 -07:00
Kurt
c3043b05e3 Staravia->Starly dream ball inheritance
Closes #1445
2017-09-06 21:18:22 -07:00
Kurt
f78e017e47 Fix GSC table loading
Was ignoring G/S slots (only had crystal) thus some special G/S
encounters (underleveled examples being Magmar lvl14) were not
recognized.
Thanks HaxAras!

https://projectpokemon.org/forums/forums/topic/41579-pokemon-silver-under-leveled-pokemon-flagged-as-illegal/
2017-09-06 20:03:36 -07:00
Kurt
423be8b2c0 Add VC1 tradeback shiny check
tradeback implies it was transferred to GS for a bit, thus had to be
transported with the new transporter
2017-09-06 20:02:41 -07:00
Kurt
13a50fecc0 Update badwords (per ver 11.1.0-34)
3DS Banned Word List - Updated: 09/13/16 (v9217 | FW 11.1.0-34)
Thanks @Bl4ckSh4rk !
2017-09-06 17:15:18 -07:00
Kurt
cbda637981 Remove old (GF fixed) shiny correlation
Transporter was updated
2017-09-06 09:12:56 -07:00
Kurt
d3ebbffb79 Add wordfilter legality checking
WordFilter checking is enabled by default, and is absolutely slow (regex
checking 3,800 patterns for 3 different strings). Utilize a dictionary
to store previously computed values. Seems to alleviate the massive
slow-down.

Closes #1442
2017-09-05 23:31:24 -07:00
Kurt
b948f27646 Add wordfilter
#1442
2017-09-05 22:57:45 -07:00
Kurt
973675b6c4 Handle bad evolution table data edge case
for whatever reason, slowpoke's gen7 data -> slowking didn't clear the
level to 0; so handle the edge case by sanity checking
2017-09-05 22:11:52 -07:00
Kurt
76ff629006 Flag invalid nsparkle
previously would only flag if it was missing on npokemon
also fix gen5 traded egg locations
move egg ribbon verification to the new class
2017-09-05 20:32:07 -07:00
Kurt
47ca69f92b Legality edge case fixes
Some incorrect IDs, some additions (unbreedable hidden abilities in
genV)

https://projectpokemon.org/forums/forums/topic/41407-pkhex-legality-errors-on-gen-6-updated/?tab=comments#comment-219459
2017-09-05 18:28:38 -07:00
Kurt
c531f9ae5f Update 17.09.05
Update event binaries with latest from the Event Gallery
this time, ignore any in the "Unreleased" folder!
2017-09-04 22:54:16 -07:00
Kurt
c98b0ab0b3 Refactoring
Split some large methods into smaller pieces
2017-09-04 18:55:15 -07:00
Kurt
6fe926d1f6 Refactoring
readability++
2017-09-04 13:48:10 -07:00
Kurt
0b4e6a0733 Refactoring
relocate ribbon checks/class to more focused location
reduce amount of GenNumber checks (use stored Generation value instead)
2017-09-03 19:51:29 -07:00
Kurt
cf61333b40 Add gym team history
thanks vg anon (187997971/188004360)
2017-09-03 17:23:20 -07:00
Kurt
9f8cbf3e46 Add more usum prep
Closes #1438 ; SM evo table wasn't being loaded as the gameversion was
changed to USUM.
Will see if there's any evo changes soon!
2017-09-02 08:41:36 -07:00
Kurt
229d752d7a Update showdown form parsing
Closes #1437 (should have been handled in PKHeX.Core not winforms);
extracted the two sanitization methods and sprinkled in some c#7
2017-09-02 08:26:51 -07:00
Kurt
6589869b35 More refactoring
simplify some expressions, reduce repeat operations
2017-09-01 23:45:47 -07:00
Kurt
d1aa02fb31 Refactoring
split up current move parsing a little
2017-09-01 23:15:57 -07:00
Kurt
84c90e973e usum prep
Copied binaries from sm, references set up for saving time later

I assume not much will change in terms of structures, so it should just
be a file replacement & filling in static encounter table => 'working'
legality checks
2017-08-31 22:37:28 -07:00
Kurt
578ab137e2 Refactoring
Flag Korean Ranger Manaphy (never distributed)
extract pk1 catch rate verification
2017-08-30 21:30:07 -07:00
Kurt
4c0a2602eb Simplify greninja gift check
form is already checked in the encounter generator, so the only case
where it has not been thoroughly checked is if it is not a mystery gift.
it will always be the default form (in that case).
2017-08-30 08:14:42 -07:00
Kurt
d5e5a463dc Refactor order of pidiv checks
collision between mgshiny and cutecharm shinies
Closes #1435
2017-08-29 08:32:22 -07:00
Kurt
a314ebfbd3 Add pokewalker early return check
check the middle bits for signs of pokewalker origins
can either be regular or adjusted underflow style

saves a little bit of computation time by not computing compatibility
for obvious non-matches
2017-08-28 23:40:04 -07:00
Kurt
072f1ba83d Refactor level-evolution checks slightly
Allows evolution met level check to be skipped
Adds minimum level constraint for evolution chain generating

Closes #1430

also adds deferral to the gen3 encounter generator as encounterstatic
gifts can collide with wild encounters when transferred
2017-08-28 18:12:57 -07:00
Kurt
86608f886d Fix incorrect comparison
don't write for gen5, do write for gen1-4.
Closes #1429
2017-08-27 20:39:11 -07:00