Kurt
950ddcf9fd
Reduce npclock object size
...
24 bytes per object -> 16 bytes
2,624 objects are made for legality checking; reduces from 73KB to 41KB
removing unnecessary clone recreation -> count from 2624 -> 414 (41KB to
6.6KB)
yay 10x reduction; not huge in the big picture but a fun exercise
2019-01-06 20:58:57 -08:00
Kurt
0c9b760470
Move GetIV to pkm, misc simplifications
...
remove linq for characteristic calc (get max IV) and others
remove some reliance on new[] for iv/ev
pk5 replace bitmagic with property get->set copy for cleanliness
2019-01-05 10:51:41 -08:00
Kurt
4dad475fcd
Fix colo lock check regression
...
oops; tests pass now
2019-01-04 00:10:44 -08:00
Kurt
90e5776dbc
Update ereader 0IV detection
...
the ereader mons are nature/gender locked too, so unroll a little prior
to rechecking the overall team (with ereader mon included). Have to do
it this way as a lock can pop if the ereader data matches a prior spread
before the prior teammate can be generated.
2019-01-03 21:29:19 -08:00
Kurt
272a29a641
Differentiate DP/Pt Shaymin
...
fateful isn't on dp shaymin even though it's an illegal encounter
2019-01-03 17:04:32 -08:00
Kurt
bd6494d8c7
recognize gen12 italian trade OT
...
https://projectpokemon.org/home/forums/topic/46143-bug-in-last-update/?page=3
Thanks ThePunish3D!
2019-01-03 15:47:41 -08:00
Kurt
bd56999b20
Increase search flexibility
...
add more version fetch methods, add reset method to reset encounter
priority
#2219
2018-12-30 17:30:57 -08:00
Kurt
2ecd3f1f30
Replace IV3 with FlawlessIVCount
...
Other games may vary the flawless IV count so best to have consistent
declarations
(the vc transfer encounter has 5 or 3 depending if it's a mew/celebi)
2018-12-30 10:33:00 -08:00
Kurt
82eae79823
Remove cosplay fixed IV
...
Was added a few months ago
https://github.com/kwsch/PKHeX/pull/2117
Game ignores the fixed IVs and instead does 3 flawless IVs
2018-12-30 01:10:53 -08:00
Kurt
78ff441e8b
Update iencounterable api with new criteria arg
...
rearrange some logic for clearer function (extract some methods)
2018-12-29 22:24:34 -08:00
Kurt
c2422d6927
Misc updates
...
possibly gonna update the iencounterable api for criteria
check/enforcement, rather than just generating random encounter data.
2018-12-29 22:19:44 -08:00
Kurt
d5a8d29088
Misc updates
...
reduce some allocs, clearer names/enum usage
2018-12-27 20:24:24 -08:00
Kurt
2d75e93ef0
Move encounter matching logic to iencounterable
...
generator logic is now clean
2018-12-27 01:00:08 -08:00
Kurt
22b9da58e2
Add priority setting for yielding possible encs
2018-12-15 21:34:50 -08:00
Kurt
ec4088b1fe
Cleanly lay out hgss swarm data
2018-12-02 14:46:17 -08:00
Kurt
77a4691a58
Add remainder of relicanth swarm data
...
https://projectpokemon.org/home/forums/topic/48702-bug-ss-relicanth-encounter-error/
Thanks finalevil151!
2018-12-02 14:39:24 -08:00
Kurt
d41197828b
Misc fixes
...
apply version after adding (was previously left as Unknown version ID)
add Route 9 to rarespawn flying list (thanks @sora10pls )
2018-11-29 16:06:25 -08:00
Kurt
71f1e6238a
Misc fixes
2018-11-23 10:15:49 -08:00
Kurt
58080f36c9
Add WB7 and legality detection logic
...
Derived from WC7 with minor alterations (dynamic OT/Nickname which is
stored in the Full data). Since the 0x108 is not stored in the save
file, just keep the full data around.
2018-11-21 12:24:41 -08:00
Kurt
0ebfb38717
Add Route 20 to sky encounter rarespawn list
...
Thanks @ReignOfComputer !
2018-11-20 23:00:16 -08:00
Kurt
7bd3bfc52e
Update rarespawn restrictions for birds
2018-11-20 13:38:49 -08:00
Kurt
ba1a7c2bcf
Fix broken tests
...
rework getblank for version specific
2018-11-19 16:14:49 -08:00
Kurt
4022d7fea9
Add check for invalid pgo shiny transfer
...
Thanks @sora10pls !
2018-11-19 13:07:21 -08:00
Kurt
70fe7f58ee
Remove eevee, revert porygon
2018-11-18 20:39:15 -08:00
Kurt
67cc6bdead
Account for wild catch combo/lure level boost
...
Route 4 sandshrew captured at level 13 (12 is max)
+1 for now, not sure if it can go higher
2018-11-18 16:17:39 -08:00
Kurt
17348c1808
Add bird rare spawns
2018-11-18 10:36:28 -08:00
Kurt
1c0b2488ef
Update lapras/porygon gift locationIDs
...
Thanks Asia81!
2018-11-18 09:41:52 -08:00
Kurt
029e0e0a08
Manually add rare slot locations
...
placeholder; hopefully this isn't permanent
2018-11-17 15:12:32 -08:00
Kurt
a2eef9deae
Misc fixes
...
it is version exclusive; fix magikarp speed IV
2018-11-16 16:44:25 -08:00
Kurt
720e04ff91
Allow 7b trades to be shiny
...
remove the todo, thanks twittersphere
remove version exclusivity for puppycat (can be done on either ver)
2018-11-16 14:20:06 -08:00
Kurt
ed5abbd686
Add puppycat NPC location
...
Thanks (twitter) thelostdogg!
2018-11-15 18:39:30 -08:00
Kurt
94b924fdfc
Add ingame trade IVs and random AV notes
...
exclusive maximum, not inclusive
2018-11-15 17:35:34 -08:00
Kurt
22063d3907
Add ingame trade met locations
2018-11-14 23:04:40 -08:00
Kurt
830c2cbb29
Add GO encounter area/slots
...
Level ranges per species TBD
2018-11-14 17:40:41 -08:00
Kurt
24c541eeef
Get savefile-context sensitive pkm
...
Generating a IEncounterable -> SAV for pb7 can't start with pk7
2018-11-13 19:19:20 -08:00
Kurt
f11fa8752c
Use pkm format specific evolutions, gg deviations
...
GG has slightly different evos from usum, don't bother adding a new
binary.
2018-11-13 19:04:58 -08:00
Kurt
5abbe6dceb
Add fetching for lgpe encounters (legality checks)
2018-11-11 22:46:03 -08:00
Kurt
101149eb2e
Skip eggs for gg (like cxd)
2018-11-11 14:19:02 -08:00
Kurt
9d2be1da9f
Add beginnings for 7b encounter asset fetch
2018-11-11 13:12:24 -08:00
Kurt
1827b32d8f
Add init function for wc7 gg files
...
pretty sure these will pop up soon as the pball plus doesn't send the
mew itself
2018-11-11 13:09:04 -08:00
Kurt
f38c46f5ec
Misc updates
2018-11-10 21:07:31 -08:00
Kurt
453f43edd8
Allow shiny xd duking gifts
...
https://projectpokemon.org/home/forums/topic/48279-issue-with-ribbon-legality-shiny-dukings-and-japanese-text/
2018-11-08 18:58:52 -08:00
Evan Dixon
9c87ad2977
Port tests to .Net Core ( #2156 )
...
* Rewrite tests with XUnit and .Net Core
* Add better "because" message
* Skipping test that was not ready & convert the fact to a theory
* Tweak casing
* Convert select date tests to theories
* Make the GetStringList load lock safer
2018-11-06 15:25:35 -08:00
Kurt
daf41da91b
Add more pokewalker moves
...
Thanks theSlayer!
2018-11-03 12:42:11 -07:00
Admiral-Fish
69b6ea57a3
More nature lock data ( #2154 )
...
* Fix lock data
Don't have data on Speal phenac, Spheal post, and Ursaring from colo so can't verify that.
* Fix e-reader data
2018-11-01 22:38:33 -07:00
Kurt
fe989d48fe
Misc prep updates
...
Update comments / xmldoc
Add a savefile storage compressor (ie array[] with empty interstitials
-> list); return true if the compression moved anything (repopulate
views), and the count of occupied slots in the list.
Add saveblock base class; I haven't really liked how SAV6/7 do all the
logic; I'll still expose properties that will then point to a saveblock.
Cuts down clutter.
Add template Dex manipulator, with gen6/7 implementations
Speculate sequential gp/ge gameversion IDs
2018-11-01 15:38:09 -07:00
Admiral-Fish
6a5ee7bf6d
Fix Electabuzz data ( #2151 )
2018-10-31 23:16:13 -07:00
Kurt
8f9cc6cd7e
Fix xmldoc ampersands
2018-10-31 13:52:09 -07:00
Kurt
908c98b876
Switch lock checks to newer more complete check obj
...
Now accounts for the shiny locks & associated restrictions, abusing the
recursion by setting & unsetting the required CPU Trainer's shiny value.
Repoint all test methods to use the new obj methods
2018-10-29 22:49:04 -07:00
Kurt
afffaaa43c
Enable full shadow lock checks
...
If you find any edge cases (the code does not account for shiny locks
yet) pls lmk, would be nice to have confirmed tests :) :)
2018-10-29 19:44:30 -07:00