Kurt
2be84b6005
Rework encounterslot location fetch
...
store ref to area instead of location, useful for fetching sibling slots
from the parent.
2017-11-25 18:16:50 -08:00
Kurt
690cbaae79
Unban fossils
...
except for aerodactyl (old amber not obtainable)
https://projectpokemon.org/home/forums/topic/42761-fossil-legality-issue-usum/
https://www.serebii.net/itemdex/clawfossil.shtml
etc
2017-11-25 15:20:45 -08:00
Kurt
ad5e69550e
Add hgss safari slot block priority bypass
...
allows hgss safari mons regardless of frame call (table is currently all
Slot=0).
may need separate handling down the road:
* switch slot number to an enum for slot codes (>0 = slot number, less
than -> do something else).
not something im interested in right now
2017-11-25 15:03:37 -08:00
Kurt
fbce8582c7
Add encounter slot checking
...
emerald silly stuff like magnet pull not implemented so some stuff may
be not matched.
2017-11-25 13:53:39 -08:00
Kurt
76903bce9f
Fix gen4-6 gen4 origin encounter type defer check
...
only check etype if appropriate (not gen7+)
2017-11-25 09:48:49 -08:00
Kurt
d1bae13250
Add flagging for crystal transfers
...
users should know better but best to know
allow gen2 female when from crystal
2017-11-24 18:19:16 -08:00
Kurt
a7866d3ed0
Simplify crystal detection
...
any crystal-only data => crystal
no change in overall function for legal pkms being transferred
2017-11-24 18:12:30 -08:00
Kurt
1aea5ac7de
Switch crystal detect to gender
2017-11-24 16:21:52 -08:00
Kurt
bb5456bf9d
Update 17.11.25
...
Update event binaries with latest from the Event Gallery
2017-11-24 14:15:01 -08:00
Kurt
d757282ffe
add cxd spanish item names
...
thanks JoseAbad !
2017-11-24 13:19:13 -08:00
Kurt
20cd29c088
remove mind blown for sm
...
off by one
Closes #1658 , thanks @Ntonio36
2017-11-24 12:05:08 -08:00
Kurt
3483b4bb91
Clean up vc2 legality/transfer stuff
2017-11-24 10:13:42 -08:00
Matt
c2fa0892f1
Fix Nihilist flag
2017-11-23 16:13:08 -05:00
Matt
71403c3541
Fix Cosmog/Magearna flags
2017-11-23 15:09:19 -05:00
Kurt
c8bd6d8aea
misc kor encoding updates
...
transporter/bank parsed:
fix 벵벴 swaps (verified ingame)
switch ⋯ for … to match bank
add blank space (u3000) for 0xFF to match bank
note 0xB6C is incorrectly 0xB6D in transporter (=> "."); not an issue as
not a valid char choice ingame.
table data dump: https://pastebin.com/R254mB9p
reproduce via exefs: (kor1-B table followed by english analog
kor_table0)
int ofs0 = 0x1BE3C0;
int ofsK = 0x1BBE48;
int len0 = 0x130;
int lenK = ofs0-ofsK;
A+ parsing: https://pastebin.com/FAxpadxs
2017-11-23 10:18:09 -08:00
Kurt
b8a5657d5a
misc tweaks
...
pull out transfer locations to const references
add vc2 & crown beast/celebi met location suggesting
add vc2 crystal sensitive detection
add 2 more usum trainer stats (thanks holla!)
2017-11-22 21:45:30 -08:00
Kurt
4bbe586981
block ash greninja from USUM game origin
...
should really be part of a 'receivable by game' check; not doing any
more of these edge cases. need card hash -> permit bits for future
cases.
2017-11-22 08:24:54 -08:00
Kurt
d834ae3ccf
allow banned pokemon for BattleTreeGreat in USUM
...
stupid banlist removal case
master still downlevels/bans
2017-11-22 08:23:50 -08:00
Kurt
d5411f1453
Add nickname flag override for encountertrade
...
closes #1649
2017-11-22 08:11:53 -08:00
Kurt
9806677d5e
EncounterType init update
...
move MarkEncounterTypeData back above the area size reduction so that
the mark-by-locationID special handling will work
prevent slottype from becoming overwritten if already defined by special
case handling
add examples provided to automated test cases
closes #1648
2017-11-22 07:52:17 -08:00
Kurt
f25b4fea9c
Add forme range check method to personalinfo
...
relocates logic to better location
2017-11-21 18:32:27 -08:00
Kurt
b2b6df7808
Shuffle encountertype loading around
...
add rocksmash type for cianwood
closes #1646
2017-11-21 18:32:26 -08:00
Ntonio36
0578ec19a9
Light retyping
2017-11-22 01:50:33 +02:00
Kurt
9923dc4a7a
Update spanish legality translation text
...
https://www.diffchecker.com/nKe4LYso
Thanks JoseAbad !
2017-11-21 15:37:48 -08:00
Kurt
05f2968c95
Add wormhole species to AlolanCaptureOffspring
...
allows apricorn & beast balls
2017-11-20 17:16:16 -08:00
Kurt
1e5fc96e8e
fix gs met location errors
...
override current location if format is GB
update GS transfer location ID
2017-11-20 09:11:37 -08:00
Kurt
8b2ec89c52
Add default value for formecount
...
https://projectpokemon.org/home/forums/topic/42632-bug-gsc-titles-support-broken-gs-transfers-not-recognized/?do=findComment&comment=223647
2017-11-20 08:08:48 -08:00
Kurt
6534ef1919
Refactoring
...
Reworks festa facility into a get/set object, simplify some operations
naming convention (PascalCase) for methods/properties
closes #1635
2017-11-19 21:25:46 -08:00
Kurt
8f5fbeb504
allow pupitar hidden ability on 2->7
...
yay
2017-11-19 19:48:45 -08:00
Kurt
a570d13dc5
Quacklin’ edge case
...
can't be bothered remapping the input file to match encoding/decoding
tweaks. best to just handle this one case.
2017-11-19 19:37:25 -08:00
Kurt
01dacce214
Add gs transfer met location
...
30017
2017-11-19 19:19:35 -08:00
Kurt
70ec1fda5e
cleanup
...
wasn't able to view the designer layout so I removed & readded to
project -- works fine now.
uppercase method names
2017-11-19 16:16:44 -08:00
Kurt
a8d5acdd50
Merge pull request #1635 from pokecal/master
...
add G7 FestivalPlaza Editor
2017-11-19 15:27:13 -08:00
Kurt
ef9722153f
move evochain fetch outside of location iterator
...
also relocate gen12 code so it only runs for gen12
2017-11-19 15:26:41 -08:00
Kurt
f5aa3c3b0a
Fix form not specified check for totems
...
Closes #1634
2017-11-19 14:16:28 -08:00
pokecal
3c85b0ead3
add G7 FestivalPlaza Editor
...
There are too many phrases,
I have no plan to complete all list of phrases.
But I think user can edit phrases of each facility
by using their phrase settings.
2017-11-20 06:50:39 +09:00
Kurt
237f376354
Add battle style learned flags for usum
...
thanks @sora10pls
2017-11-19 13:30:17 -08:00
Kurt
6d3ee54d44
Reorder case fallthrough
...
closes #1631
based on
5859daf1d8
any case -> reverse game order
2017-11-19 13:15:32 -08:00
Kurt
1b9d657c2f
Remove double encounter slot species filtering
...
GetValid already filters by species
move some common non-location code out of the method; can be done for
the dexlevel fetching too -- future improvement.
2017-11-19 12:41:23 -08:00
Kurt
469587bbbd
Add Rotom OT name
...
"nah lets just store the OT in the save file twice"
add a double check if OT != RotOT to remind the user
2017-11-18 22:26:57 -08:00
Kurt
5859daf1d8
Add maxspecies checks for gen7
...
accesses arrays outside the range for the new USUM species
Closes #1631 , add test case
also adds lycanroc test cases for #1630
2017-11-18 21:50:48 -08:00
Kurt
6b281cbefe
more rockruff 1 handling
...
y u do dis gf
Closes #1630
2017-11-18 20:08:11 -08:00
Kurt
f29529d141
Add spanish legality translation
...
Thanks @BlackPyoVic!
2017-11-18 17:38:06 -08:00
Kurt
3b5e6239de
Add usum pelago encounters
...
nothing exclusive, but different from sm
https://pastebin.com/NhAA1vJn
2017-11-18 13:53:51 -08:00
Kurt
6394dac19f
Rework mysterygift pkm sprite generation
...
don't bother converting to pkm then generating the sprite off that; use
the overload with int/bool
removes sav/pkm dependency for generating gift descriptions, and
standardizes the names a little. maybe a PKMBase interface would be
useful...
2017-11-18 11:34:23 -08:00
Kurt
f7e20a3c43
Misc tweaks
...
fix roamer3 not setting IVs
fix usum z items rightmost pixel getting chopped off
use Gen* instead of GenNumber for specific cases (faster)
add WasGiftEgg location case for Gen7
remove some unnecessary array allocations
2017-11-17 22:19:23 -08:00
Kurt
6a033b00fc
Merge pull request #1628 from wwwwwwzx/master
...
Unban white/orange Flabebe HA
2017-11-17 20:40:30 -08:00
Kurt
b111b9dad4
Add totem showdown export
...
soontm
https://github.com/kwsch/PKHeX/issues/1626#issuecomment-345417263
2017-11-17 20:38:43 -08:00
wwwwwwzx
f48e6f711a
Unban white/orange Flabebe HA
...
obtainable from SOS call
2017-11-17 20:19:41 -08:00
Kurt
311e110f6b
Block wild dusk rockruff
...
closes #1627
adds test cases
2017-11-17 20:02:01 -08:00
Kurt
9d1ca22b6d
Add usum showdown forme/species i/o
...
Closes #1626
2017-11-17 19:14:27 -08:00
Kurt
523c03606e
Add guard check for out of range gen1 species
...
Thanks ShadowMario3!
2017-11-17 17:07:12 -08:00
Michael Scire
d56354822c
Fix Magearna gift flag, add can-receive flags
2017-11-17 14:27:28 -08:00
Kurt
61c0bf5271
Fix italian/german b2w2 yancy/curtis OT swap
...
https://projectpokemon.org/home/forums/topic/42528-bw2-in-game-trades-yancycurtis-20171117/
2017-11-17 08:38:38 -08:00
Kurt
5ae7c9a5da
Merge pull request #1623 from ReignOfComputer/master
...
Flip Valid Trade OT Compare Operator
2017-11-17 08:31:30 -08:00
Kamron Batman
eb635c31de
Fixes reference in csproj.
2017-11-17 08:16:57 -08:00
Kamron Batman
d2d04075bc
Replaces PCD.pkl with WC4.pkl. Tested and working.
2017-11-17 08:11:49 -08:00
ReignOfComputer
69f11ec3bc
Flip Valid Trade OT Compare Operator
...
Related:
https://projectpokemon.org/home/forums/topic/42528-bw2-in-game-trades-yancycurtis-20171117/
2017-11-17 23:57:55 +08:00
Kurt
55d8f4aa26
Add rockruff event evo edge case
...
different altform IDs
2017-11-16 21:04:51 -08:00
Kurt
e4b48b2712
Update 17.11.17
...
Update event binaries with latest from the Event Gallery
2017-11-16 19:32:58 -08:00
Kurt
025b8da52c
Flag invalid forms on sav compatibility check
...
closes #1615
2017-11-16 14:30:18 -08:00
Kurt
8958646ae6
Fix game specific pair evolution comparison
...
US table with SN result in false; just check the even/odd for these (as
they are pair specific).
Closes #1611 , thanks @Ammako !
2017-11-16 14:20:13 -08:00
sora10pls
a977b722db
USUM event flag updates
2017-11-16 16:01:06 -05:00
Michael Scire
e8d1d1f521
Add "IsSMCompatible" helper method to PK7.
...
Translated from official game code (PokeRegulation::CheckNijiCompatible).
Potentially for future use in USUM -> SM transfers?
2017-11-16 12:23:35 -08:00
pokecal
909148a42a
add USUM UB flags
...
Stakataka APPEARABLE means NOT CAPTURED,
I think the latter will get misunderstand as CAPTURED,
so I adopt former.
2017-11-17 02:31:36 +09:00
pokecal
33c37370c3
add UltraRide SlidePad flag
...
SlidePad will be enabled from the first play.
2017-11-17 00:06:36 +09:00
Kurt
0cfb79a3e2
handle hacked edge case input
...
gen7 pkm version on format5 -> exception on new int[-X]
normally caught via exception suppression but better to handle the
cause.
2017-11-15 18:13:04 -08:00
Kurt
618c2cc074
Merge pull request #1612 from sora10pls/master
...
Add more USUM event flags
2017-11-15 16:29:16 -08:00
Kurt
725d094a0d
Add dusk form rockruff check
...
Repurposes "alolan only form" to specify that the form cannot be
obtained with the current game of origin.
Closes #1611
sorry for butchering any translation
2017-11-15 16:28:47 -08:00
sora10pls
431e63d96b
Add more USUM event flags
2017-11-15 19:19:02 -05:00
Matt
fecc0771b5
Add Surfing Pikachu event flag ( #1610 )
...
* Add Surfing Pikachu event flag
2017-11-15 12:14:43 -08:00
Kurt
5fbf331827
Fix trade evolution check
...
incorrect behavior; check for milotic case if appropriate first
Closes #1609
2017-11-15 10:11:05 -08:00
Kurt
897ed84933
update milotic specific evolution checks
...
verifier: return true if detectably traded
check: invert condition to skip out if it is verified traded
2017-11-15 08:36:09 -08:00
Kurt
3832a8afd4
Fix noibat trade gender
...
closes #1608
2017-11-15 08:23:45 -08:00
Kurt
3e60bcd5dc
fix minior dex set clamp
...
[0],[cores), ignore all other meteor forms
thanks @sora10pls
2017-11-14 21:55:52 -08:00
Kurt
dbf10d1c29
Add surf score editing
...
trainer7 Ultra tab
Closes #1605
2017-11-14 21:35:28 -08:00
Kurt
c4f8dabd26
rework dex getting
...
changes iteration to be per-species rather than per list.
uses the internal 'should i set a bitflag' code rather than a banlist.
2017-11-14 19:14:02 -08:00
sora10pls
79e2a5e9ee
Add more USUM event flags/constants
2017-11-14 17:54:22 -05:00
Kurt
5e6b2f43c2
Update wild/egg generators for totem cases
...
so wonky edge cases
2017-11-14 08:43:04 -08:00
Kurt
8b5803781d
Add bewear location
...
All static encounters have been found!
Closes #1577
2017-11-13 20:50:10 -08:00
Kurt
953f6939a5
Fix double save export memecrypto issue
...
Closes #1600 , memecrypto is applied on first export but not cleared
prior to second export, thus resulting in a checksum over garbage data
that is permanently lost when the new memecrypto sig is applied.
Solve this by keeping track of memecrypto application status.
2017-11-13 19:34:50 -08:00
Kurt
97a159c710
Add ultra sun wild encounter details
...
using pk3DS's dump pkl binaries method
2017-11-13 09:16:29 -08:00
sora10pls
7b379ac428
Fix spaces
2017-11-13 01:42:11 -05:00
sora10pls
8fe32ec007
Update Gen 7 event flags/constants
2017-11-13 01:33:30 -05:00
Kurt
4341dc1775
Add Galactic Key to usum key items permitted
...
add zygarde cube reconstructs gifts, thanks @sora10pls !
2017-11-12 21:56:08 -08:00
Kurt
dbabcb9ef0
Misc updates
...
fix hall of fame fixed offset
fix ball throw type unlock/learned flags using fixed offset
fix current throw type defaulting to -1 when Nihilist (new USUM style)
by adding in for USUM
add fused slot offset fetching
convert event flag combined byte fetch to use Get/SetEventFlag with
event flag references.
add ZRingUnlocked sav properties & checkbox for toggling
set AlolaTime only if the combobox is enabled (only disabled if not yet
set by game)
Closes #1595
2017-11-12 21:28:34 -08:00
Kurt
9b61c94402
Add ditto5 natures
...
thanks @wwwwwwzx for pointing this out
remove others that have encounter details forced (for totem battles)
2017-11-12 12:15:08 -08:00
Kurt
55c31cb598
Update encounters
...
add ability locks for sm gifts
add poipole secondary location
add magearna details
2017-11-12 10:59:23 -08:00
Kurt
54b9fa7c93
Merge pull request #1592 from sora10pls/patch-1
...
Update USUM static encounter list
2017-11-12 09:18:31 -08:00
Kurt
064d18c13f
Add necrozma special forme moves
...
not present in the levelup movepool like they should be...
2017-11-12 09:17:59 -08:00
Matt
6ecc7f2efb
Update USUM static encounter list
2017-11-12 12:08:48 -05:00
ReignOfComputer
0b95f7d4b8
Porygon/Zygarde/Trainer School Encounters
2017-11-12 22:29:21 +08:00
ReignOfComputer
f1e7c0f759
Hypno Trio Encounter at Hau'oli City PD
2017-11-12 18:33:06 +08:00
sora10pls
e1abe0be5e
Fix indenting
2017-11-12 01:10:16 -05:00
sora10pls
b0c228174f
Add USUM Legendary re-battle flags
2017-11-12 01:08:49 -05:00
Kurt
fbab1cfbe6
Update usum eventflag max
...
now these event flags are making sense
2017-11-11 18:58:57 -08:00
Kurt
dea70bf243
Add cosmog & zygarde gift locations
...
thanks @architdate !
(thanks @bui for the pikachu!)
porygon remains
2017-11-11 17:24:49 -08:00
Kurt
d674ea4f39
Add surf pikachu details
...
Closes #1589
Thanks @PolarPeridot !
2017-11-11 17:16:31 -08:00
Kurt
e6c68a8fc9
Add heavy ball permissions for USUM
...
heavy ball now works in USUM
2017-11-11 16:26:22 -08:00
Kurt
5d90e9dc53
Refactoring
...
check alolan forms for forme matching, break up large method to
something a little more understandable.
2017-11-11 09:35:07 -08:00
Kurt
d8acdf2aa1
Fix partner pikachu sprite
...
fix form+1 overflow (cap7 pikachu in sm accesses gumshoos1! bad!)
2017-11-10 19:53:11 -08:00
Kurt
f5a6f23161
Add more static enc data
...
clear out unused (highly certain) SM encounters
add solgaleo/lunala locations
add partner form pikachu
2017-11-10 19:43:31 -08:00
Kurt
6127dd7a08
split record maxes
...
slightly different in USUM, any difference increased the cap:
070 999999->999999999
071 999999->999999999
072 999999->999999999
073 999999->999999999
074 999999->999999999
192 9999->65535
193 9999->65535
194 9999->65535
197 9999->65535
Worth noting that these were undocumented record IDs and likely unused
in Sun/Moon; don't really need to split these tables but good for
documentation purposes.
Trainer7 grabs maxes from the save without specifying version, so add an
overload to default to USUM (even though the unused records will have
bad caps, they're unused in SM so whatever).
2017-11-10 17:37:04 -08:00
Kurt
8ab39cae7b
Update dex form handling
2017-11-10 17:08:47 -08:00
Michael Scire
e455aef501
USUM event constants for starter choice/Tapu rebattle
2017-11-10 15:08:20 -08:00
sora10pls
6cd2a08238
Fix Type: Null location
2017-11-10 13:19:47 -05:00
sora10pls
1d44c45fe0
Fix indenting
2017-11-10 13:16:43 -05:00
sora10pls
6f58698187
Add more static encounter locations
2017-11-10 13:08:36 -05:00
Kurt
41a60dda78
permit necrozma formes 1&2
...
and 0.
was eventually reaching the Battle Megas list so insert this abort-early
detection.
2017-11-10 09:22:41 -08:00
Kurt
30f07fc979
Fix wishiwashi handling
...
totem wishi isn't a gift because it isn't really a totem
2017-11-10 08:42:25 -08:00
Kurt
a3b8b15b4d
Merge pull request #1582 from ReignOfComputer/master
...
Normal Pokemon @ Ultra Space Wilds / Sandygast @ Route 15
2017-11-10 05:21:35 -08:00
Kurt
a39f92cac6
Add rockruff forme list items
...
revert form selection filtering, screwed up scatterbug and other
forced-forme lists. behavior works fine without the list filtering
2017-11-10 04:01:36 -08:00
ReignOfComputer
7dd8dd970f
Normal Pokemon @ Ultra Space Wilds
2017-11-10 17:29:20 +08:00
Kurt
af91388792
Return empty enumerables for invalid table fetch
...
shouldn't ever be called but best practice
2017-11-09 22:17:55 -08:00
Kurt
b3436cb791
Add totem forms selection/spritemod and req changes
2017-11-09 21:52:11 -08:00
ReignOfComputer
ec6e485c50
Sandygast @ Route 15
2017-11-10 13:14:18 +08:00
Kurt
23d57f8807
Add ditto5, necrozma
...
fix tab for oras flag resource
2017-11-09 21:11:19 -08:00
Kurt
38f4f773f3
Merge pull request #1580 from sora10pls/patch-1
...
Add several Ultra Warp Ride locations
2017-11-09 20:12:39 -08:00
Kurt
139e130b82
evo table / check update
...
prune froslass/gallade evolution tree pruning by editing the binary like
prior commit for sm
fe66a65464 (diff-e0f20441fd5149efa4e829994c94f683)
revise banlist interaction for usum evos (need to trade to USUM to be
able to undergo these evolutions).
Closes #1570 (evolution table issues), other open issues can catch any
other/unrelated fallout.
2017-11-09 19:47:01 -08:00
Kurt
5e2e4fd6f1
Add usum evo table
...
repacked garc as mini uu
2017-11-09 19:27:16 -08:00
Kurt
519e21a9bf
Permit totem mimikyu forme (not battle forme)
2017-11-09 19:26:47 -08:00
Kurt
6057780b4b
Fix blank saves array accessing
...
old blanks modeled sm saves with fixed offsets; since the conversion to
dynamic block offsets, a few offsets need to be manually defined.
2017-11-09 19:26:31 -08:00
Kurt
104a9d622e
Add non-alolan native species for ball tables
2017-11-09 17:56:52 -08:00
Matt
c1de054c7f
Add several Ultra Warp Ride locations
...
- Cresselia
- Swanna
- Drapion
- Audino
- Medicham
- Magcargo
- Quagsire
2017-11-09 20:27:14 -05:00
Kurt
4deb24cc95
Add gender locks
...
lots of totems with fixed genders (not capturable), but some other
slightly important ones needing enforcement.
2017-11-09 16:32:09 -08:00
Kurt
55820246cf
Misc tweaks
...
mark SOS slots for usum, only permit varied alolan evos to be forme
changed (blocks totem raticate from being matched to non totem forme
inputs)
2017-11-09 16:18:30 -08:00
Matt
82a7502cf4
Add Poipole location
2017-11-09 19:10:11 -05:00
Matt
273231ad00
Add USUM Pinsir on Exeggutor Island locations
2017-11-09 16:56:10 -05:00
Kurt
ccdb84b851
update for some errors
...
restore ekans values, re-add antishiny for yungoos set
2017-11-09 07:22:34 -08:00
Kurt
b615ef0057
Update static7 with more data
2017-11-09 07:17:36 -08:00
Kurt
ae0122254a
Add abilities & IV3 flags for usum gifts
2017-11-09 06:43:11 -08:00
Matt
800a6b32b8
Merge pull request #1 from kwsch/master
...
Update from upstream repo kwsch/PKHeX
2017-11-09 02:02:42 -05:00
sora10pls
38cbf160ec
Add Totem-Sized gift ability/version checks
2017-11-09 02:01:09 -05:00
Kurt
2af7b152a7
re-enable error suppression
...
oops
2017-11-08 22:59:18 -08:00
Kurt
665e94b0aa
misc cleanup
...
add german forme names
truncate some forme names
fix nidoran gender symbols
adds null check for invalid (caught error) pkm
disables accessory giving (needs more research)
2017-11-08 22:56:42 -08:00
Kurt
9f2899617d
add ultra moon encounter legality binaries
...
fix an odd edge case going from a bad FRLG save to gen6+ while we're
pushing code
2017-11-08 21:56:56 -08:00
Kurt
6f99bc5365
Merge pull request #1574 from wwwwwwzx/master
...
Fix USUM Chinese species names encoding
2017-11-08 20:34:28 -08:00
Kurt
28d15bb06e
Permit usum met locations & add new move PP counts
2017-11-08 20:32:23 -08:00
Kurt
ab8faac55d
Update legal tables with usum species
2017-11-08 20:23:06 -08:00
wwwwwwzx
9ab2938b84
Fix USUM Chinese species names encoding
2017-11-08 20:20:41 -08:00
Matt
a8000608f2
Add more USUM static encounter locations
...
Totems @ Heahea Beach, Island Scan.
Grovyle is Akala-Friday @ Route 5, as is Bellsprout in SM; assume locations were unchanged.
2017-11-08 22:56:13 -05:00
Kurt
115c611120
add surf to gift pikachu moveset
...
only gift pkm with special move
2017-11-08 19:51:04 -08:00
Kurt
da5dd5ccb3
remove usum early return for dex bit setting
...
I highly doubt this is causing save corruption; looked through the
disassembly and the offset ptrs are the same relative to sun/moon.
Implementation is flexible for both as gamefreak allocated enough space
in each bit array.
pokedex editor recognizes bools correctly (including for formes).
2017-11-08 19:34:07 -08:00
Kurt
93b49928a0
add lvl/egg move tables for usum
...
add a few met locations for static encounters, recognizes torracat with
double kick correctly!
2017-11-08 19:31:07 -08:00
Kurt
93bd974249
Add EncounterStatic data
...
sourced from Ultra Moon, location IDs are not known (need manual docs).
Many of these may be unused, like last gen. Will eventually remove
unused ones once crowdsourced effort finishes.
2017-11-08 18:43:55 -08:00
Kurt
0caa0dec72
Group forms with special battle formes check
2017-11-08 16:27:35 -08:00
Kurt
800ba6cf90
encounter additions
...
add ingame trade data
add placeholder SOS data containers
add refs to all wild encounters (pelago is same as sm)
unmark some todo's
2017-11-08 15:07:04 -08:00
Kurt
cf35adca6f
Add roto blank item handling
...
preserve input data
2017-11-08 14:12:41 -08:00
Kurt
47058d5709
Permit loading of usum met locations to pkmeditor
2017-11-08 13:44:55 -08:00
Kurt
97dcd1a845
Add pokedex forme flag correlation table
2017-11-08 13:29:06 -08:00
Kurt
56ca5d02bc
re-add newline
...
now boots, inventory editor now works
2017-11-08 13:12:10 -08:00
Kurt
80bedb97c4
Misc tweaks
...
Adds game names for languages other than english
adds z crystal sprites for held items
temp-fixes chinese pkm names (need manual translation for the new
species)
remove newline at eof
toggle back on legal item lists, add assumed Key Item list
differentiate duplicate item name strings (-arizers)
2017-11-08 13:06:20 -08:00
Michael Scire
78acb8e13b
Fix save resigning for USUM, add resources for new pokemon
2017-11-08 11:31:09 -08:00
Kurt
ae773f189b
add usum tutor data
...
one large list at static.rodata:005E6860, formatted to look like AO
table with deletions & insertions at the bottom.
bitflags are used in one large set (not 4 chunks of 4 like prior).
2017-11-08 01:25:10 -08:00
Kurt
ece66e1a02
Misc tweaks
...
allows loading of species > 720 lol
still nowhere near done (large task is resource acquisition)
2017-11-08 00:51:08 -08:00
Kurt
543736d568
Early rough USUM compatibility
...
need to dump string resources, sprites, and repoint the form list string
fetch later. tons more to do
no guarantee of any working functions
2017-11-08 00:34:32 -08:00
Kurt
9af0876352
clone cached string resources
...
don't share object references, need to be passed as new copies as the
array contents can be modified
need to clone on dict return to not pollute dict, and need to clone
after dict add so that the first return doesn't equal the dict copy --
this one could be on the dict add... keep returns same.
2017-11-07 17:12:04 -08:00
Kurt
d08bd25b4f
always clear memecrypto sig on load
...
allows verification & resigning to work as intended
reverts to code prior to refactor
b1641772e6 (diff-1681616e650971296aa4b549afadd0eaL116)
cleanup suggestions for tests
2017-11-07 16:57:18 -08:00
Kurt
9ef4152736
add more xml docs
2017-11-06 22:44:51 -08:00
Kurt
6df1f97f95
early abort on altforms < 1
...
prior generations store 0 instead of 1 for some cases
24121553b4 (commitcomment-25445089)
2017-11-06 21:08:39 -08:00
Kurt
24121553b4
Add savegame sensitive pkm legality checking
...
uses the forme count of the savefile (rather than a futureproofed
same-gen forme count)
Closes #1559
2017-11-06 19:31:24 -08:00
Kurt
062684f4a6
Relocate transfer block cases to separate method
...
#1559
2017-11-06 18:34:35 -08:00
Kurt
9cac3738dc
Add handling for mid-chain lowlvl encounter evos
...
haunter caught at level 20, transferred at 24, leveled once as gengar
did not allow gengar in the chain as it is assumed (incorrectly) that
gengar is evolved after transfer.
determine if the lower levels of the next step's evolution rung are
valid, using the same logic as pikachu case but to handle the other side
Closes #1564
(should probably refactor the encounter chain generator to use the base
encounter data if known, but oh well works fine and isn't a cpu hog)
2017-11-06 18:21:58 -08:00
Kurt
38989b4747
Export correct species name for verbose output
...
#1564
2017-11-06 18:06:23 -08:00
Kurt
0f69c1116e
Add unown gen2 invalid form check
...
closes #1565
2017-11-06 17:13:16 -08:00
Kurt
4a6ea19a31
Cleanup
2017-11-06 17:12:59 -08:00
Kamron Batman
83e06b4436
Adds WC4 support.
2017-11-06 16:26:34 -08:00
Evan Dixon
cf4e31a67d
Remove zh file in ko directory
2017-11-06 10:57:42 -06:00
Kurt
f0cfb0df23
cleanup
...
shuffle / fix xml doc data
2017-11-06 08:01:33 -08:00
Michael Scire
b1641772e6
Refactor Memecrypto API, Add Memecrypto Tests
...
Refactors the Memecrypto API to improve generalized usage.
Adds unit tests that verify memecrypto works, so that future changes
don't potentially break the code.
2017-11-06 03:24:48 -08:00
Kurt
ff4903ae04
Fix dppt trainer names
...
were shifted by a lang ID
closes #1558
2017-11-04 18:35:46 -07:00
Kurt
2d6b6f7095
Simplify gen7 checksum operations
...
don't spit out a new byte array for each block, just check with same
array
unrelated: allow pk2's to be selected from file->open when a sav7 is
open
2017-11-04 15:04:21 -07:00
Kurt
f959179e1a
add more colo encounter locations
...
dogs had hypothetical met locations, now fixed (y u so weird cxd)
Closes #1556
2017-11-03 21:33:48 -07:00
Kurt
f48afaf12d
Switch slottype to flags
...
simplifies some logic, adds some documentation, speeds up loading very
slightly
2017-11-03 17:14:18 -07:00
Kurt
d7300ce68f
Cleanup
...
add amoongus route22 encounter
fix typos in comments
resharper suggestions for recent pr
2017-11-02 21:37:28 -07:00
Evan Dixon
35ed920805
Set build action of new resources
...
I forgot to check this when merging master into my previous PR
2017-11-02 14:06:32 -05:00
Kurt
a00f3ed894
random IVs with specified count
...
Closes #1553
removes duplicate logic in batch editor
2017-11-02 09:05:44 -07:00
Kurt
008605c4ff
Add Gen5 BP editing to simpletrainer
...
a little bit hacky but exposes the values well enough.
moves the coins entry to the Badges groupbox, and makes it visible
looking like a BP editor (lol)
thanks @sora10pls for finding the offsets!
(blockinfo array isn't really used, is sorta just there for
documentation...)
2017-11-01 21:26:38 -07:00
Kurt
495eb26740
Rework colo starter PIDIV detection
...
force colo starters to be male only
use some c# lang features for EncounterType flags
add edge case PIDIV detection for starter gender/shiny lock scenario
adds a little documentation for those unfamiliar with the NPC PKM
generation quirks.
Colosseum Starters will now be recognized with a different PIDIV type
which is specific to them & them only.
2017-11-01 21:12:44 -07:00
Evan Dixon
7ac1a4c6df
Cache resource name => manifest resouce name mapping
2017-11-01 21:47:55 -05:00
Evan Dixon
133a19a468
Fix fallback from unlocalized language file to default language
2017-11-01 21:44:35 -05:00
Evan Dixon
81e87c1a15
Change the concurrent dictionary to a dictionary
...
It'd be nice to be thread-safe, but I don't really expect multithreaded applications to be calling this method a lot, and I'd imagine the concurrent version has more overhead
2017-11-01 21:42:12 -05:00
Evan Dixon
29ce9a347b
Cache retrieved data to improve execution speed
2017-11-01 21:34:01 -05:00
Evan Dixon
b13aae9a57
Merge branch master
2017-11-01 21:08:43 -05:00
Kurt
60e719a65a
Misc refactoring
...
more usum prep
don't allocate empty array on every savefile creation (use linq All
comparison)
add percent seen/caught savefile properties for data analysis purposes
2017-10-31 09:24:54 -07:00
Kurt
e9cebf933c
Fix headbutt encountertype fetch
...
future improvement can be detecting when "none" is appropriate, but for
now, whatever.
Closes #1502
2017-10-29 20:19:49 -07:00
Kurt
da9e316cd8
Add rock smash encounter type flagging
...
I don't believe rock smash (EncounterType 1) exists, tests at Route 19
and Vermillion yielded None & City.
Closes #1379
Opens #1502
2017-10-29 19:17:53 -07:00
Kurt
3f533399f2
Simplify slot type loading
...
instead of 2 similar methods, use params to achieve a flexible method
for both situations
isolate rock smash / headbutt type loading
2017-10-29 18:09:30 -07:00
Kurt
afde4514e2
Add realgam tower / deep colosseum locs
...
sudowoodo & gsc dogs
closes #1549
fix loading issue for abilities in gen3 format, copy the gen4
sanitization
2017-10-29 10:41:12 -07:00
Kurt
9ada593af9
add gen7 nick ot (trades)
...
#1249
todo usum table when appropriate
2017-10-28 23:04:02 -07:00
Kurt
d2ebb6340e
Add gen5 nick/OT info (trades)
...
#1249
appears b2w2 is the first game with fixed nature & nonfixed PID (based
on RoC's specimens), so can't filter by PID on those.
2017-10-28 21:43:47 -07:00
Kurt
e4319fd929
Add gen3 nick/OT info
...
#1249
2017-10-28 19:51:55 -07:00
Kurt
2c73e130af
Add gen4 nick/OT info
...
#1249
2017-10-28 19:02:18 -07:00
Kurt
021ecbfe47
move pkm load compat check to pkmconverter
...
closes #1550 , mgdb/pkmdb throw unconverted files which need conversion;
move main file load conversion to a reusable method and have pkmeditor
call it on every load.
add skip argument to ignore the conversion check (ie if the file is
loaded from an undoubtedly same type source).
2017-10-28 14:26:27 -07:00
Kurt
9d0b153eab
Add egg hatch suggestion for b2w2
2017-10-28 14:00:44 -07:00
Kurt
a401db608e
Split trade encounter nick/OT verification methods
...
#1249
2017-10-28 13:15:51 -07:00
Kurt
0e9960909b
Refactor encountertype check to bitflags
...
#1379
need to double check none permissive later
2017-10-27 23:57:21 -07:00
Kurt
52b2fd2778
Add fullwidth 0-9 for kor tables
...
since _0 and _B are the same, just share a reference instead of separate
tables with same values.
Closes #1548 , thanks @host1126 !
2017-10-27 16:30:02 -07:00
Kurt
f6927e4fe5
Add gen2 KOR localization exceptions
...
Closes #1547
Thanks @host1126 !
2017-10-26 20:37:11 -07:00
Kurt
c2cf824afd
Fix {0xE8, "췄"} - {"츄", 0xF2} KOR swap
...
that's silly lol
#1547
2017-10-26 20:18:32 -07:00
Kurt
00a4c1adf5
Add multilang c/xd ingame gifts
...
save space by just using a loop
closes #1529 , pokespot proc discussion relocated to associated issue
(as previously noted in comments)
2017-10-25 21:53:55 -07:00
Kurt
a6ef105544
Update gen3/4 encounter generators
...
revisit for simplification now that EncounterTrade matching is more
precise (PID required to match).
#1249
2017-10-24 22:25:52 -07:00
Kurt
59319a614a
Add PID values for Gen3/4 ingame trades
...
#1249
2017-10-24 22:24:29 -07:00
Kurt
8c2dcb2dd3
Use generation specific species name
...
nickname resetting should use the generation specific value
2017-10-24 20:59:58 -07:00
Kurt
8a84f63fcb
Add usum special tutor bitflags
...
( ͡° ͜ʖ ͡°)
2017-10-24 19:59:46 -07:00
Kurt
c60fee85b2
fix pk2 korean nickname set
...
closes #1544 , thanks @host1126 !
2017-10-24 18:57:28 -07:00
Kurt
9bbd7c6551
Save all 5 korean OT characters
...
Closes #1545 , thanks @Bl4ckSh4rk !
2017-10-24 18:49:51 -07:00
Kurt
933bfba8e1
Misc cleanup
...
check gen2 stadium names, use pkm.Japanese when favorable
2017-10-24 18:27:40 -07:00
Kurt
69cf1eaa9c
add more pkhex.core xml documentation
...
adds a bunch of documentation useful for those unfamiliar with the core
library
2017-10-23 23:12:58 -07:00
Kurt
a46e56c917
Add xmldoc for mystery gift class names
...
refactor pattern checking to simpler representation, add null abort when
extension is not provided.
2017-10-23 15:45:58 -07:00
Kurt
60562fb44e
Use empty enumerable when appropriate
...
no allocation == no pressure for garbage collector
2017-10-23 15:44:01 -07:00
Evan Dixon
9e980f4a1d
Use manifest resources for string lists instead of the resources file
2017-10-23 13:18:44 -05:00
Kurt
a03ac10fc5
Misc refactoring
...
no functional change
2017-10-22 23:26:37 -07:00
Kurt
515a694afa
Add LanguageID enum
...
no functional change, just less-magic-numbers for easier to understand
src
2017-10-22 21:01:08 -07:00
Kurt
44c80bd722
Exclude light ball pikachu from gen1 species setter
...
Thanks Dunsparce!
https://projectpokemon.org/home/forums/topic/41880-yellow-version-pikachu-editing-bug/
non-functional change but fix misuse of gameversion checks (used X/Y
instead of YelloW)
2017-10-22 17:11:48 -07:00
Kurt
42d1c252ee
Enhance gen1/2 language detection
...
Closes #1540 , check for german only characters (gen1/2 can trade
between resulting in only OT being checkable). May be worth changing the
german check to return an int instead and check for other language
specific values.
2017-10-22 16:52:46 -07:00
Kurt
096f6bbd18
Add RANDY Gen2 ingame trade
...
closes #1538
rename pid deferral to pidiv deferral for clarity
2017-10-22 10:41:27 -07:00
Kurt
c5b0ed6c35
Move encountertype deferral to main generator
...
gen4->gen5/6 electrode will match static & wild slots, but deferral only
defers within the same IEncounterable group.
2017-10-22 09:42:15 -07:00
Kurt
3970b177af
Fix kor table 0x5 0x30-3A swaps
...
pls no more
2017-10-22 09:27:00 -07:00
Kurt
cc2e379880
Fix kor table 0x5 0x10-0x20 swaps
...
there's still more in the 0x5_30 region
y u rong bulbapedia
2017-10-21 19:05:38 -07:00
Kurt
528593b59e
Disallow crystal tutors if VC
2017-10-21 19:01:23 -07:00
Kurt
791a41b1a7
Fix KOR encoding table off by 1
...
Closes #1534
Thanks @host1126 !
2017-10-21 10:32:08 -07:00
wwwwwwzx
0820059adf
Fix Gen3-5 MaxEV per stat
2017-10-21 01:06:25 -07:00
Kurt
39279a7ad4
Add VC transfer checks
...
checks were previously only performed when finding the encounter, once
found, the GB encounter was validated. the transfer encounter is derived
after all encounter checks, thus remaining unchecked (really, only for
Locations).
Move generating logic to the generator, and double check the locations
are valid.
#1535
Thanks @DJPanda065 !
2017-10-20 21:07:15 -07:00
Kurt
00adfda6e4
Flag Hidden Ability -> other change (hacked)
...
Closes #1535
2017-10-20 20:10:56 -07:00
Kurt
0e24b5237e
cleanup
...
remove redundant/repetitive match update (updateTypeInfo with Format>=7
already updates the encountermatch just prior to this method call)
2017-10-20 20:10:13 -07:00
Kurt
7c36190661
Expand IdentifierContains feature
...
now behaves the same as a property filtering
2017-10-20 08:47:31 -07:00
Kurt
ae0bf5c75c
remove (None) egg gen4 hatch location
2017-10-19 22:00:31 -07:00
Kurt
a75614ed77
Modify eggmove fetch
...
fetch is exclusively done with version already known; there are cases
where version can change for eggs so it's safer this way.
version change reference (gen6+):
212a489335
2017-10-19 21:20:47 -07:00
Kurt
a561948371
Detect mixed->fixed gender incompatibility
...
Calculate and compare the original encounter's gender's as well.
exclude azurill gender change (only case where this can happen) by
continuing the if-else.
Add Snorunt-Froslass to FixedGenderFromBiGender.
Thanks Davil !
2017-10-19 20:56:59 -07:00
Matt
4353f39286
Ban Sport Ball
2017-10-19 14:33:39 -04:00
Kurt
6e42d01779
calculate 4->5 string dictionaries
2017-10-18 22:16:48 -07:00
Kurt
228b0e84fb
Simplify some dex interaction
...
utilize get/set flag method calls, add xml docs for the two methods
2017-10-18 21:43:42 -07:00
Kurt
a53e8ddb7e
Fix grotto mienfoo level range
...
Thanks paf!
2017-10-18 21:16:52 -07:00
Kurt
5a09cd9122
Add deferral case for gen6 magmar classic ribbon
...
use "when" for easy src code
Thanks Nessus!
2017-10-18 18:28:17 -07:00
Kurt
cd6dfceb9e
Update fateful/shiny lock check gen3 wc3
...
VerifyFatefulMysteryGift wasn't hitting for WC3's (g.Format == 3);
simplify that branch and reintroduce the shiny check as a separate
method
Thanks Davil!
2017-10-18 18:18:23 -07:00
Archit Date
6f5d0489d5
Zygarde 50% Power construct Showdown Import fix
2017-10-19 02:45:45 +08:00
Kurt
f5b22d7873
Update 17.10.17
...
Update event binaries with latest from the Event Gallery
2017-10-17 23:59:14 -07:00
Kurt
886b2ef632
misc refactoring
...
simplification / splitting, also more usum prep and other readability
updates
2017-10-17 23:19:34 -07:00
Kurt
0cc60e6006
Change lookup arrays to hashsets
...
faster checking (slightly negligible but using the correct data
structure for the use case)
2017-10-17 22:06:07 -07:00
Kurt
a9261a1eec
Fix starly safari ball species ID
...
not staravia dawg
Thanks Britty!
2017-10-17 19:23:22 -07:00
Kurt
18aa7fe100
ban more safari/hidden ability pairs
...
https://projectpokemon.org/home/forums/topic/41840-bug-pokemon-in-ball/?tab=comments#comment-221383
2017-10-17 09:08:48 -07:00
Kurt
c3e0d5339c
Fix jp gen2 save detection
...
simplification commit was dyslexic on JP/EN.
20 <-> 30 (EN 20, JP 30 is the correct count)
https://bulbapedia.bulbagarden.net/wiki/Pokémon_Storage_System#Core_series_games
pk2 structure is smaller for jp (smaller strings), thus has 30 cap.
International has 20.
2017-10-16 17:33:09 -07:00
Kurt
4d91aad876
Flag gen2 egg moves when transferred from gen1
...
move must be removed 2->1 so cannot be permitted as egg move.
remove unreachable code (ParseMovesRelearn only is called for Generation
>= 6, and thus Format != 2).
2017-10-16 17:24:19 -07:00
Kurt
e744dcc340
Add OT too short check
...
apparently some people can be this oblivious
2017-10-15 18:11:20 -07:00
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