Kurt
94652e2c95
sync missing refactorings
...
oops
2018-06-05 19:07:27 -07:00
Kurt
e7fc30ac7a
Add mysterygift region/language restriction code
...
Closes #1317
Needs the events crew to produce serialized binaries with hash-flag data
for each generation before proceeding any further. I'm not really
interested in doing all the work for events since it doesn't impact
battle legality.
2018-06-05 18:27:08 -07:00
Kurt
fffc943668
Differentiate Colosseum DNA Samples
...
https://projectpokemon.org/home/forums/topic/45609-bug-colosseum-dna-sample-incompatibility/
Thanks KonohaDaze!
2018-06-05 17:02:22 -07:00
Matt
e7e54552db
Update text ( #1981 )
2018-06-05 10:57:38 -07:00
Kurt
a5af7a443b
Revert outer comparison
...
type check done in loop, whatever comes out of ConvertPKM is either the
desired type or null.
2018-06-04 21:32:15 -07:00
Kurt
59b4b8f755
Simplify pkm conversion
...
just loop instead of goto, let the jit handle optimization
src looks quite pretty now!
some tradeoffs made but much more maintainable now
2018-06-04 21:28:14 -07:00
Kurt
6cff642ff1
Skip format check on pk* init
...
also remove ck3/xk3 no-op call (no encryption for those formats, like
bk4).
2018-06-04 20:25:54 -07:00
Kurt
ae3b6a7fa1
Simplify IContestStats usage
...
remove new[] creating for checking if any contest stats exist
(HasContestStats)
2018-06-02 21:19:03 -07:00
Kurt
ab393e1f99
Rework set PID-ability checks
...
Closes #1979 , adds test cases.
2018-06-02 13:22:52 -07:00
Kurt
15b5de11c0
Handle hatched wc3 metlevel oddballs
...
Closes #1978
Met Level at 5, when hatched ingame is reset to 0.
2018-06-02 07:50:48 -07:00
Kurt
e0aa1934e7
Update translations
...
yield the Box Sort/Modify/Delete menustrip
2018-06-01 19:10:05 -07:00
Kurt
d724dffcc3
Update translations
...
Add secret debug hotkey to trigger update of translation files
2018-05-31 22:40:55 -07:00
Kurt
89f95c20af
Update 18.06.01
...
Update event binaries with latest from the Event Gallery
2018-05-31 21:43:20 -07:00
Kurt
1d9795f774
Fix batch modify filter bool
...
rename methods for clarity
Closes #1977
2018-05-31 19:59:05 -07:00
Kurt
f237476ccc
Add nickname reset modify
...
nickname reset clears except for encountertrades (some have fixed
nicknames).
remove untraded check for HT memory verification, has to be traded if it
has a HT memory.
2018-05-31 19:49:47 -07:00
Kurt
e82dcdb124
update memory captured check
...
gen5 landorus witnessing another species should use gen6
https://projectpokemon.org/home/forums/topic/45424-landorus-memory-flagged-as-illegal/
2018-05-30 21:50:11 -07:00
Kurt
5475da05c3
entree forest updates
...
clamp species list based on savefile
fix form control index set
remove slot from list (avoid duplicates, there's 530 slots and both
games have more than that available).
Closes #1974
2018-05-28 12:49:41 -07:00
Kurt
4b8cb9b8fb
Add entree forest editor & randomizer
...
ezpz
(clear trailing spaces from entree forest comments)
2018-05-28 08:26:52 -07:00
Kurt
2061f23e26
Misc simplifications
...
fixes suggestion requests for invalid gameversion pkms
2018-05-27 17:57:45 -07:00
Kurt
c31ab63a1a
Initialize mgdb for tests that need it initialized
...
don't initialize multiple times
2018-05-27 15:57:28 -07:00
Kurt
f2f2b8aa00
Toggle fateful for xd wc3s
...
created as pk3 thus the xk3->pk3 setting fateful has already happened.
#1972
2018-05-27 15:04:21 -07:00
Kurt
a57cdb5f48
Update fateful handling
...
#1970
add files as test cases
2018-05-27 14:38:03 -07:00
Kurt
730709b33b
Add entree forest abstractions
...
make cryptarray public
2018-05-27 14:19:19 -07:00
Kurt
4c1e014a53
Fix mgdb viewing cxd gifts
...
Closes #1972
2018-05-27 14:16:56 -07:00
Kurt
7278b2486a
Fix filter comparison
...
filtered out != filtered to
want to check if the filter matches the data.
2018-05-27 12:27:44 -07:00
Kurt
ae27c10dc2
Misc cxd fixes
...
#1970
2018-05-27 12:18:27 -07:00
Kurt
1b8fe201c0
Misc simplifications
...
Simplify some pkmeditor logic, pull out togglemarking
2018-05-27 10:24:28 -07:00
Kurt
6a3b422a14
Fix xd fateful gift pkm
...
stored as wc3's, make "Version" from IVersion rather than int so that
"WasXD" recognizes it.
Update handling for fateful encounter trade-away cases.
#1970
2018-05-27 10:11:01 -07:00
Kurt
ec2816379e
Restore unk mystery gift message
...
no match & fateful -> 'hey maybe pkhex doesn't know about this one yet'
2018-05-27 07:01:46 -07:00
Kurt
98895bd365
Ignore fateful as xk3 if not a shadow
...
Duking etc trades
Closes #1970
2018-05-27 07:00:07 -07:00
Kurt
f7a61cf72c
Flag version exclusive trades with incorrect ver
...
Closes #1969
2018-05-27 06:59:27 -07:00
Kurt
e6765d3691
Flag langid=0 when appropriate
...
only jpn bw ingame trades can lack a languageID.
skip language checks for pk1/pk2 as they have no language stored.
2018-05-26 14:40:02 -07:00
Kurt
05e10860ed
Flag gen5 origin footprint ribbon if Δlvl<30
...
Closes #1965
Also fix vc transfers ignoring some restrictions (ie footprint ribbon on
lvl 16 magneton, was incorrectly allowed as gen < 6).
2018-05-26 09:58:01 -07:00
Kurt
565a96db2a
Flag maison banned species having maison ribbons
...
https://projectpokemon.org/home/forums/topic/45410-skillfulexpert-battler-ribbon/
Thanks Davil!
2018-05-25 19:54:25 -07:00
Kurt
dbb23f33c8
Update trim call for strings
...
7ef8a88678 (commitcomment-29123689)
A better fix may be to just make all line endings consistent ('\n'), but
string resource loading time is negligible
2018-05-24 21:16:55 -07:00
Kurt
c349ab8218
Relocate vc lang detect to pkx
...
reusable
2018-05-24 16:53:54 -07:00
wwwwwwzx
a25c6a4e00
Fix Colo Starter PID Method Check ( #1961 )
...
If SIDf >> 16 != SID then temp won't be assigned.
2018-05-24 06:00:29 -07:00
Kurt
700ce00d8e
Add setting of batrev boxname
...
unused in gui, no wallpapers
2018-05-23 16:30:22 -07:00
Kurt
199512a9f7
Add box name & repoint party offset
...
refresh box names on saveslot swap
rework saveslot list to be (name, slotIndex) of valid slots
2018-05-22 19:02:56 -07:00
Kurt
3b635be77f
Flag nonparsed
...
removed parsedvalid/invalid, unnecessary I guess
2018-05-22 18:57:39 -07:00
ReignOfComputer
97e21ce133
Handle Em Dash in Showdown Import ( #1959 )
2018-05-21 21:36:10 -07:00
Kurt
400774595e
0 indexed -> 1 indexed
...
fixes regression from 2 days ago
e216c38151 (diff-37bd5b548e2b340e5c38fd0961a3eb04L165)
Thanks @ReignOfComputer for pointing this out:
https://github.com/kwsch/PKHeX/pull/1956
(also, update GetSprite since slot is 1-30; box is now -1(and below) if
not originating from a box. Now matches the legality check side
2018-05-21 18:28:54 -07:00
ReignOfComputer
a81b43cd4f
Fixed Off By One Error in Single Box Dump ( #1956 )
...
Huh, how long has this been here :O
2018-05-21 18:24:29 -07:00
Kurt
3c7d083c1e
Add more utility to batcheditor
...
method ( string[] , pkm[] )
carry out batch edit, all within core (no gui needed)
2018-05-21 17:04:02 -07:00
Kurt
620d822fef
Misc changes
...
swallow error for invalid filenames in saveutil -- don't bother
detecting those files.
on fail to getmoveset, return the current moves instead of null.
2018-05-21 17:02:48 -07:00
Kurt
51a878d6a9
Fix memory type : location label
...
Was...
Location ;:
now
Location:
2018-05-20 20:16:39 -07:00
Kurt
bbe6762d24
Misc fixes
...
Off by 1 for MemArgType
div/0 for no instructions
Thanks Davil!
https://projectpokemon.org/home/forums/topic/45324-menories-error/
2018-05-20 20:05:27 -07:00
Kurt
815ba9d753
Fix values not being saved
...
lul temp obj isn't 'this'
(these past 3 commits should be treated as one)
2018-05-20 19:29:19 -07:00
Kurt
d38cc969c0
Add final filter check
...
oops
#1953
2018-05-20 19:26:36 -07:00
Kurt
4d0007f49b
Show nature of pk1/2 via slothover
...
derived via EXP%25 as if it were converted to pk7.
#1954
2018-05-20 18:33:38 -07:00
Kurt
199b6f2caf
Add move rand for batch editor
...
Also add Move Rand & Move Reset to box modify contextmenu
2018-05-20 14:29:13 -07:00
Kurt
c103220e0c
Handle gen3->4->5 levelup evochain pruning
...
Gen7 weavile can exist in gen4 as sneasel; existing code had pruned it
from gen4. Skip pruning for this case
probably overdid the checks but whatever. works.
Thanks /u/ThrowawayReddNinja for pointing out this false flagged case
with an example!
2018-05-20 10:35:58 -07:00
Kurt
407cca38dd
Update generator to handle link celebi
...
Had relearnmoves defined but no current moves; better for generator to
spit out all moves rather than the special move (hold back)
store current moves for all link gifts
2018-05-20 09:06:32 -07:00
Kurt
cd3b24c122
Handle smeargle generating
...
Needed moves is essentially none (unless you have invalid sketch moves).
2018-05-20 08:19:03 -07:00
Kurt
30dc87df7e
Misc ui fixes
...
move distinct filter to reflectutil as it is spitting out
inherited(overriden) property names after the current class' property
name.
remove original (default) memory strings; had removed Items.Clear()
earlier (why would I need to clear if there was nothing there?) but
there was something there needing to be cleared. Remove the useless
initialization to fix that :)
Thanks Davil!
https://projectpokemon.org/home/forums/topic/45321-distsupertrain/
2018-05-20 07:46:59 -07:00
Kurt
1f8c72af5a
Handle EncounterTrade without moves specified
...
Similar to EncounterStatic handling
Thanks @architdate for pointing this out
2018-05-19 21:49:26 -07:00
Kurt
e216c38151
Misc updates
...
Add GetShowdownSets text output methods
Add party/box overload methods for easier slot setting api
Protect locked slots when importing BoxData
Misc saveditor simplifications
Add wc3->pk3 test
2018-05-19 20:48:03 -07:00
Kurt
9fd5df6e99
Misc pbr ui fixes
...
remove todo comment
fix exception when refreshing slot coloring
update box when saveslot index changed, not validated.
update boxviewers when saveslot changes
2018-05-19 16:33:06 -07:00
Kurt
047272c2ba
Add batrev party viewing/handling
...
ezpz
party 4 bytes at end:
pkm, 0 (b) party index (b), 0x8000 (be u16)
not sure if there's a better way to detect party count...
2018-05-19 14:42:21 -07:00
Kurt
a7f9f69b02
Remove Type property
...
verbose summary uses the encountermatch's current type; the "x is y"
check is more than sufficient.
2018-05-19 12:21:16 -07:00
Kurt
b670f525fb
Split up evolution classes
...
Too many classes in the same file, break up.
simplify things a little in EncounterArea (remove passing thru nulls,
should throw excpetion immediately if misconfigured).
2018-05-19 12:07:50 -07:00
Kurt
ca14b43b62
Relocate memory specific data to own file
...
allows easier handling for memory interactions
2018-05-19 10:04:07 -07:00
Kurt
be0f864b42
Relocate memory datasource to core
2018-05-19 08:30:36 -07:00
Kurt
23083317d7
Refactoring
...
pull out GameStrings
add debug output for crystal headbutt trees
fix qrpkm item access
2018-05-18 21:35:57 -07:00
Kurt
95b4d0820d
Minor reorganization
...
amount of pkm obj classes is pretty high, move the static utility
classes to another folder
breaks usage of pkm.ShowdownText; removes a dependency from PKM.
2018-05-18 19:33:11 -07:00
Kurt
8cf70770cf
clean up batch editor
...
refactor some logic to make it easier to reuse
add some xmldoc
2018-05-18 19:19:15 -07:00
Kurt
d772a82953
Move batch editor logic to core
...
previous hurdle a year ago was propertyinfo fetching not looking at the
base class's properties; dig deeper for all properties to mimic existing
code for netframework
end result is batch editing now possible without gui
2018-05-17 22:43:07 -07:00
Kurt
51a4d8095d
Handle jp OT string length copy
...
Closes #1949
was using international length (11) instead of (6)
2018-05-16 16:58:00 -07:00
Kurt
78c4dbd69c
Update plugin interface
...
now is notified during a file load event (can handle itself)
2018-05-14 17:30:56 -07:00
Kurt
c10b01dc83
Fix control name reference
...
Thanks Davil!
https://projectpokemon.org/home/forums/topic/45237-slottext-slotcry-languagefile/
2018-05-13 22:00:16 -07:00
Kurt
3ee6070b98
Fix poketch write
...
1123c24b0c
had addressed the loading, however, it did not address the saving
update pkx to not create a new array every time IsPKM is called
(possibly a lot)
2018-05-13 20:35:09 -07:00
Kurt
857919bd28
Add basic plugin sys
...
reference PKHeX.Core, main window loads assemblies & initializes
providing an ISaveProvider and the menustrip control (to insert controls
into)
pretty rough but should allow for inserting external control buttons &
allowing it to edit the UI a little
example: https://github.com/kwsch/PKHeXPluginExample
feedback is appreciated
2018-05-13 12:49:29 -07:00
smileynation
9d0ab043e7
Update lang_ja.txt ( #1941 )
...
Minor Update.
2018-05-13 09:22:02 -07:00
Kurt
28ef791014
Update hovered slot on box change
...
using keyboard instead of mouse can change box without moving mouse
outside the slot picturebox
trigger an update when the box is changed, but only if the updating
parent has the hovered child (ie a boxviewer changing box while hovering
the main window won't re-cry the main window slot since it wasn't
updated)
Closes #1940
add some gender threshold properties to personalinfo
2018-05-13 08:14:46 -07:00
Kurt
19f2420670
Add settings for slotText & slotCry
...
Closes #1939
2018-05-12 20:04:58 -07:00
Kurt
0e6db90de2
more minor tweaks
...
add 2 overloads for encounter generator
more simplifications
2018-05-12 18:11:47 -07:00
Kurt
99005d8fc0
Refactoring
...
more discards & simplifications
2018-05-12 12:28:48 -07:00
Kurt
e2f11edc43
Refactoring
...
discards, Array.Find over FirstOrDefault
2018-05-12 08:41:29 -07:00
Kurt
5a3c8f4147
Remove trailing whitespace
2018-05-12 08:41:29 -07:00
wwwwwwzx
997d41b6db
Fix minlevel of Pangoro/Tyrantrum/Aurorus in gen6 ( #1938 )
...
* Fix minlevel of Pangoro/Tyrantrum/Aurorus in gen6
30: level + dark type in the party
32: level + day
33: level + night
34: level + female
Note Meowstic isn't affected due to another entry of level + male (23)
* Minor text usage fix
* Fix xorPID flipping in TransferEC check
2018-05-12 06:57:11 -07:00
Kurt
e32495252f
Set altform before gender
...
bb5622f5db (commitcomment-28951163)
2018-05-11 21:48:58 -07:00
Kurt
9c5814346b
Add showdownset parse case template test
2018-05-11 21:44:09 -07:00
Kurt
bb5622f5db
Fix greninja import
...
pass null forms thru the converter
Closes #1937
2018-05-11 21:09:39 -07:00
Kurt
c2644cc9f0
Flag gendered pkm without gender
...
for lack of a better message
#1936
add some docs & trycatch bad wavs
2018-05-11 21:05:15 -07:00
Kurt
7ce89f0e16
Fix frlg inventory encryptionkey offset
...
72af1f7880/include/global.h (L219)
0xAF8 is berry powder! Thanks HaiPhuong!
2018-05-11 19:55:40 -07:00
Kurt
4ae1b79ad5
Handle mimikyu totem export
...
Closes #1935
2018-05-11 17:44:27 -07:00
Kurt
f82e545ab0
Update gender handling
...
Closes #1934 , unrelated tho
2018-05-10 20:22:32 -07:00
Kurt
815705bc5e
Fix gender handling
...
Closes #1933
if not allowed to be genderless, flag as invalid gender
only permit valid genders after genderless is ruled out
(both done by checking the low bit)
2018-05-10 18:53:23 -07:00
Kurt
9fb7056837
Add test living dex generator
...
doesn't generate everything due to the evo chain not being 'full'
(instead is unevolved singular pkm), nor does it evolve pkm
2018-05-09 21:02:35 -07:00
Kurt
79b2576c31
add overloads for GetPossible
...
Remove edge case handling for level 2 blissey; updates over the past 2
(yay 2 years of legality checking) can now handle that case without
special handling.
2018-05-09 20:37:11 -07:00
Kurt
9f8e86b2b5
Finish rough generator
...
* handle gen6+ egg case where egg move count < 4 (cannot displace
Levelup lvl1 moves)
* handle minior altform case
generates all species/encounters possible, yielding 144,094 pkm files
(all detected as legal!)
2018-05-09 19:21:44 -07:00
Kurt
16ed4353b2
More generator updates
...
Store 4g giratina held item for enc->pkm legality
revise usages of GetSaneGender
Rearrange some logic
Better handle impossible version encounters (gen4)
gen 1-5 done, stuck on 659 - bunnelby egg...?
2018-05-09 17:50:56 -07:00
Kurt
4913ef9647
More generator updates
...
* B2 has an error in the encounter table for Route 3 Corphish Special
water encounter; GF edited from Basculin-1 to Corphish-1 and forgot to
update the form to 0.
* Ranch Trade egg locations
* Trade gender-PID set correctly
* static roamer glitch does not apply for emerald
* Mirage Island wild Wynaut case now allowed (collision with Gift Wynaut
egg hatched on Mirage Island?)
gen1-3 done; now at 413 (Wormadam) which currently yields an
EncounterEgg AS wormadam, which isn't right...
2018-05-08 21:17:31 -07:00
Kurt
c21f8bf45f
More generator updates
...
Blazing past 251, now stopped at 280 (trade ralts, gender mismatch??)
2018-05-08 20:13:55 -07:00
Kurt
4d60a5a64e
More generator updates
...
* first case of EncounterLink, now works (version, ability, OT memory)
* handle gen2 gb events (not even sure if they pop up, just in case)
* handle gen3 ereader shadow mons
* handle gen4 spiky pichu PID type
* handle gen2 crystal egg met level
2018-05-07 22:53:36 -07:00
Kurt
8902e9662c
Add exclusive encounter handling
...
Handle Faraway Island Mew, handle DP Darkrai/Shaymin & Arceus, handle
not-distributed WC3s.
Now stopping at dex 154 -- one full generation of PKM species IDs can be
completely spawned directly from IEncounterable data!
2018-05-07 22:12:12 -07:00
Kurt
3c31d5798f
Continued pkmgen updates
...
* adds g4 forced shiny seed->pid (Chain Shiny Lake of Rage Gyarados)
* adds cxd starter pid generating handling
* adds g5 forced shiny seed->pid (MG5Shiny Shiny gift Dratini)
* excludes gen4 route45 surf impossible encounters
* actually use ingame trade edge case handler
Up to dragonair (147) yay; yellow dragonair is likely the catch rate
edge case.
2018-05-07 21:16:54 -07:00
Kurt
86bf4201e2
Remove encounterstatic-encounterslot collision case
...
Exeggutor Island has wild & one static with a fixed ability; the fixed
ability is returned first which causes wild lv40 exeggutors with
ability2 (1/2/H) to be flagged as illegal.
2018-05-07 21:12:42 -07:00
Kurt
3e885a8440
Update forme parse
...
Closes #1931
2018-05-07 18:24:30 -07:00
Kurt
734edfae20
Remove cutecharm swarm restriction
...
only affects species (can't force gender on a fixed gender swarm slot)
https://github.com/kwsch/PKHeX/pull/1314
https://projectpokemon.org/home/forums/topic/45153-bug-cute-charm-swarming-illegal/
Add swarm cutecharm test cases from thread, thanks @PP-theSLAYER !
2018-05-07 16:14:31 -07:00
Kurt
19a0560474
Misc cleanup
...
extend byte[]->pkm iterator for specifying start/stop
clean up some in main window
2018-05-06 22:24:25 -07:00
Kurt
7e9b5362d0
Simplify showdownset form handling
...
replace all dashes with spaces, and vice versa
Closes #1930
2018-05-06 18:46:51 -07:00
Kurt
5cb232d474
Sanity check some showdownset import values
2018-05-06 18:40:51 -07:00
Kurt
232427d002
Rework slot interactivity a little
...
decentralize some logic, individual view providers now provide the
details rather than detecting from a huge array.
#1925
2018-05-05 08:07:22 -07:00
Kurt
71970b3332
Add gen1/3 speciesID direct get/set
...
https://projectpokemon.org/home/forums/topic/45108-pkhex-suggestion/
2018-05-04 18:05:41 -07:00
Kurt
4b6ee3fbf5
Update 'sorter'
...
Adds IV count sorting
Adds Itemless & Illegal deleting
Adds Max level modding, item clearing. Handle egg cases sensitively.
remove final sortby for reversal case as the incremental integer
prevents further ordering.
Any suggestions? Keep in mind that some modifications can be done by the
Batch Editor scripts; smart deletions & sorts are highest value
additions ;)
2018-05-01 19:24:47 -07:00
Kurt
4c9177fcb3
Add sort force-reverse
...
hold control when triggering the sort
sneaky linq to reverse a sort by:
* re-doing the initial sort, then
* reversing the sorted pkm data by using a throwaway increment
* re-doing the final sort
2018-04-30 21:39:12 -07:00
Kurt
bbcbdd80a1
Update 'sorter' with more functionality
...
Nest item choices into separated groups (based on their overall
function).
Adds 3 more deletion options: eggs, untrained, or not-matching-savefile.
Adds 1 more modification option: Max Friendship of current handler
2018-04-30 17:32:23 -07:00
Kurt
57c625d089
Add delete criteria method providing for box clear
...
Can opt to not delete a slot
2018-04-30 17:29:13 -07:00
Kurt
ea2c6260fa
Prevent providing beta safari zone encounters
...
Fixes Krabby / etc.
Fix genderless encounterstatic gender set (Voltorb)
Now at 103, Exeggutor
pretty cool that over 100 species can have every single encounter
generate a legal pkm ;)
might be useful to add metrics to count how many encounters are
generated in a session
2018-04-29 21:56:12 -07:00
Kurt
ab71ea2d8b
More generator updates
...
Graveler (SM Trade) -> Force applying handling trainer details for
ingame trades
Ponyta (Ranch Trade) Apply correct ability for encountertradePID
Up to 98 : Wild Gen2 Krabby (safari zone impossible location needs to
get filtered from possible encounters)
2018-04-29 21:29:34 -07:00
Kurt
997ca29fe6
More generator updates
...
Checks.cs : fix duplicate analysis result (encountertrade machoke is
legal & illegal), nope, legal.
Core.cs : Add version bypass if none assigned.
EncounterSlot.cs: Handle yellow kadabra
EncounterTrade: Handle must-evolves.
now at 75: graveler (SM trade)
2018-04-29 21:08:49 -07:00
Kurt
1c3a330ab2
Remove clefable from non-obtainable encounters
...
Can be obtained via game corner
update possible games of origin
clear wasegg flag for next iteration
now at species 64: Kadabra.
2018-04-29 20:04:13 -07:00
Kurt
50d390bd4e
Fix gen1 trade version overwrite
...
only noticable when generating from
up to dex 35, clefairy now. I expect things to ramp up soon...
2018-04-29 19:03:55 -07:00
Kurt
daf093879b
More generator updates
...
all the way up to nidorina
extract some reusable methods
exclude invalid headbutt encounters
use built in randomgender
2018-04-29 18:26:36 -07:00
Kurt
b1549837b1
Update gen2 ingame-trade met location handling
2018-04-29 11:46:49 -07:00
Kurt
b353701d3e
More generator updates
...
adds pokewalker handling
now stuck on GSC Trade Spearow (likely not setting OT details as needed)
2018-04-29 11:33:35 -07:00
Kurt
4214b1be7b
More generator fixes/improvements
...
Fix/add missing gameversion references (BU instead of BW,
pokewalker=HGSS)
increase reuse of pidgenerator & add more generating methods.
seems like it's generating pkm fine besides the PID edge cases, which is
nice
2018-04-29 09:31:13 -07:00
Kurt
08603c5664
Fix xd miror b encounters not receiving versionID
...
version was set to Encounter_XD, which did not contain the miror b
encounters.
simplify XD check to be O(1) now that version is stored in the encounter
obj
2018-04-29 08:31:57 -07:00
Kurt
120f5380c9
Rework some more pkm generating logic
...
can get all the way to caterpie
- gen3/4 needs an antishiny,
- gen5 needs shiny&antishiny mech
- else case needs both as well.
2018-04-28 22:56:10 -07:00
Kurt
70992138e2
Misc encounter->pkm generating fixes
...
eggs for Gen1 must be generated in Gen2
gen1 wild encounter initial moves
gen4 abilities have 0 for single ability mons
2018-04-28 16:30:56 -07:00
Kurt
55f0143400
Handle generating gb2 events & eggs
...
restrict the simple encounter provider to not spit out cart era only
gifts.
2018-04-28 15:59:33 -07:00
Kurt
b2c54b7a43
Apply trade memory when changing handlers for pk6
2018-04-28 15:58:53 -07:00
Kurt
a11a44dde0
Add property set instead of discarding value
...
lul oops
2018-04-28 15:58:38 -07:00
Kurt
ea357cd57a
Add GetRandomFeeling
...
fixes tests & transfers where an explicit range is not legal
2018-04-28 12:59:11 -07:00
Kurt
71faaee31c
Refactor savefile tid/sid to int
...
can now use TrainerID editor control on a savefile... soon?
2018-04-28 11:06:58 -07:00
wwwwwwzx
fc72323c2e
Add general memory intensity/feeling check ( #1916 )
...
* Add general memory intensity/feeling check
Memory setting subroutines: Y: sub_43C1E4 AS: sub_469A94
Memory table RAM address: Y:0x54A4F0 AS: 0x58A134
https://pastebin.com/h1RHL7nR
* Check if egg's OT memory is blank
All empty memory should be checked before common check.
Don't allow eggs to fall through.
2018-04-28 06:26:04 -07:00
Kurt
af8084fd34
Rework cosplay pikachu static encounter population
...
Now IV3, thanks @wwwwwwzx for finding the hard-coded case (Lati@s is
already IV3).
https://projectpokemon.org/home/forums/topic/45011-illegal-cosplay-pikachu/?tab=comments#comment-230318
remove SkipFormCheck, and just have all 6 populated (so that Form0
pikachu doesn't slip through).
2018-04-27 21:53:00 -07:00
Kurt
5ad31ad0c9
Generate pkm qr better
...
Don't include nature/ability for pre-gen3, export held item string with
correct version context
(whatever for cxd)
Closes #1915
2018-04-27 18:24:07 -07:00
Kurt
f5c9873348
Update showdownset handling for gen2/3
...
Closes #1913 by detecting any required pkm format related to the item.
2018-04-25 18:45:31 -07:00
Kurt
3f6b1acc93
Add fixed gender checks for non-GBA/NDS games
...
Closes #1912 , genderless ~= fixed gender I guess; shouldn't get these
gender-errors unless it's manually tampered data/ShowdownSet
remove unnecessary code in:
* PKMEditor (>=255 is already covered by == 255 and the fact that gt is
always <= 255)
* VerifyGender (3 <= x <= 5) check is already early-returned via
PIDGender check above
Update IsGenderValid knowing that VC mons have a gennumber <= 2
2018-04-23 19:58:29 -07:00
Kurt
15ce1acfdb
update box manipulation
...
closes #1911 , changes end to be inclusive rather than exclusive. abuse
the optional to let it fill in the end caps.
2018-04-23 19:11:55 -07:00
Kurt
1b4ec11335
Add rebattleable Miror B locations to xd shadows
...
https://projectpokemon.org/home/forums/topic/44957-bug-pokemon-xd-post-game-shadows-flagged-illegal/
if shadow lock sets are ever implemented, would need to update this as
well to 'clone' with the different shadow teams available.
2018-04-23 17:14:52 -07:00
Kurt
505877763b
Update ownership sort
...
gen4 and below saves don't provide an accurate Version/Game; ignore the
version check if it is not a valid game ID.
secondary sort to current OT name so that same-named OT (ignoring case)
are immediately after the current save's pkms.
2018-04-23 08:25:32 -07:00
Kurt
9e874a0784
Add modify handling to 'sorter' dropdown
...
adds hatch all eggs in box(es, with shift)
2018-04-22 12:43:18 -07:00
Kurt
19e73a5f85
Generalize meowstic edge case
...
lang sensitive, account for no nickname as well
#1905
2018-04-22 09:53:52 -07:00
Archit Date
4dfcafc720
Fix Meowstic edge case ( #1906 )
...
Edge cases with `-F` as forms are already handled in the code
2018-04-22 09:11:09 -07:00
Kurt
ea227a8113
Extract OrderByTrainer
...
logic to order-group may be useful for later
2018-04-21 23:03:51 -07:00
Kurt
e2405346a4
Update usage sorting
...
sort friendship delta with high values to front
reference correct method for usage sort
2018-04-21 21:15:19 -07:00
Kurt
8135820e73
Fix gen3 showdownset import
...
applying details modifies pkm data, pk3 checks for validity when
determining if it is decrypted or not
#1904
2018-04-21 17:47:32 -07:00
Kurt
2ed003d668
Check legality parse before checking relearn result
...
closes #1904
2018-04-21 16:42:45 -07:00
Kurt
79f1c780f9
Update ownership sort for better not-mine grouping
...
After the current save's originated pkms, sort by OT name/gender/ID to
group them together rather than leaving them unsorted.
2018-04-21 16:32:47 -07:00
Kurt
488b5215a7
add optional sort param
2018-04-21 15:07:58 -07:00
Kurt
e91cb806e5
Extract extension->prefer format method
...
fails for 'pkx' (returned 8 instead of 6); establish standard behavior
2018-04-21 14:38:18 -07:00
Kurt
7a245278ea
Relocate mg description parse to core
2018-04-21 09:55:27 -07:00
Kurt
0b62ab85a1
Nature -> byte instead of int
2018-04-21 09:18:53 -07:00
Chromaryu
ecf191e0e6
Improve ja translation ( #1903 )
2018-04-21 08:37:32 -07:00
smileynation
d0e60b44e0
Update LegalityCheckStrings_ja.txt ( #1902 )
...
Minor fixes.
2018-04-20 09:20:30 -07:00
smileynation
5b524188cd
Update LegalityCheckStrings_ja.txt ( #1901 )
...
I translated the main error message.
2018-04-19 05:58:28 -07:00
smileynation
6d2153a39c
Update lang_ja.txt ( #1900 )
2018-04-19 05:57:51 -07:00
Kurt
159928b09b
Remove soaring as valid egg hatch loc
...
hatch ctr doesn't update (steps don't count while soaring)
https://projectpokemon.org/home/forums/topic/44854-is-it-possible-to-hatch-an-egg-while-soaring-in-the-sky/?tab=comments#comment-229931
could probably rename the hashset to indicate that it's only used for
egg hatch locations...
2018-04-18 16:01:12 -07:00
Kurt
c3494c61c1
Fix encountertime comparison for surf mons
...
surf does not have another slot set; so they were all being set to
Morning.
Could have set all 3 time flags, but kept as 'any'.
will update release binaries with this one
2018-04-18 15:58:21 -07:00
Kurt
7cbd0e5d10
Update 18.04.18
...
Update event binaries with latest from the Event Gallery
2018-04-17 20:53:13 -07:00
Kurt
353978df59
Add fixed ability pcd valid bypass
...
https://projectpokemon.org/home/forums/topic/44834-bugabout-event-evolution/
2018-04-17 20:48:14 -07:00
Kurt
a48c70ccf2
Add evolution minbound check
...
https://projectpokemon.org/home/forums/topic/44834-bugabout-event-evolution/?do=findComment&comment=229887
(espeon at level 50 originating from a level 50 eevee gift is not valid)
2018-04-17 20:06:23 -07:00
Kurt
fef1d6e0dd
de-linq some evolution dexlevel fetch
...
use shared IList interface instead of IEnumerable
2018-04-17 19:56:43 -07:00
Kurt
a34be35d9f
Add commit contents for previous commit
...
removal of some linq, reorders as described by previous commit
2018-04-17 19:50:25 -07:00
Kurt
8250bc58cd
Fix levelup->evo fetching of next levelup move
...
Correctly fixes #1163 (test cases added), eg wooper->quagsire would
learn yawn at 31 before evolving; the getmoves wouldn't provide yawn
(stopped at 30) with the old code; the lvl decrement was removed in the
incorrect commit, providing a legal verdict which was obtained
incorrectly (dexlevels were inaccurate)
2018-04-17 19:49:33 -07:00
Kurt
f767b2db0f
Differentiate WasEgg (any egg location) from bred
...
https://projectpokemon.org/home/forums/topic/44838-buggen5-egg/
WasEgg is used for other encounter based checks, so can't reduce the
logic usage
2018-04-17 18:54:38 -07:00
Kurt
86333c6db6
Flag VC transfer affection
...
contest check only applies for 3->7 not 1/2->7
https://projectpokemon.org/home/forums/topic/44674-bug-about-contests-ribbon/?do=findComment&comment=229785
Thanks Davil!
2018-04-14 21:36:11 -07:00
Kurt
6db0b673db
Handle ??? type gen4 arceus form check
...
interstitial between steel & fire, shift the form value up by 1 if
applicable
https://projectpokemon.org/home/forums/topic/44806-arceus-not-legal/?tab=comments#comment-229774
2018-04-14 18:20:58 -07:00
Kurt
7a77b4524f
Add b2w2 route 23 amoonguss
...
https://projectpokemon.org/home/forums/topic/44798-bug-report-amoonguss-encount-error-b2w2/
Thanks smileynation!
2018-04-14 08:47:02 -07:00
Kurt
8cfd64df63
Add affection contest check for pre gen6 events
...
https://projectpokemon.org/home/forums/topic/44674-bug-about-contests-ribbon/?do=findComment&comment=229739
2018-04-13 18:52:38 -07:00
Kurt
6b387f9037
Handle alolan species transfer form check
...
https://projectpokemon.org/home/forums/topic/44718-bugabout-xd-alola-form/?do=findComment&comment=229735
2018-04-13 18:44:16 -07:00
Kurt
78f533605c
Handle untranslated Italian LeafGreen Jynx trade
...
lul nice translating team u got there, would be a shame if they forget
to translate something ;) /s
Thanks cicciochiave!
2018-04-12 21:22:04 -07:00
Kurt
6a93a7e435
Fix kor2 string truncation
...
Closes #1896 , thanks @Narithegreat !
2018-04-11 17:06:13 -07:00
Kurt
7c1f163140
Fix gen4 (and 3 by usage) ’ ' apostrophe -> data
...
’ is aliased to ' for cleaner display to user; there's no usages of this
method beside gen3/4 strings.
fix early truncation of gen3 strings (don't put terminator on prior
valid char)
https://projectpokemon.org/home/forums/topic/44777-some-little-bug-in-emerald-leafgreen-and-blue-vc/
Thanks cicciochiave!
2018-04-11 16:51:33 -07:00
Kurt
b1cb5226f7
Fix b2w2 tutor reads
...
yikes what a typo
Closes #1895
2018-04-10 17:36:54 -07:00
Kurt
b8a5ccdf7d
Simplify shedinja evo move check
...
Closes #1895 , re-verified with pkm provided in #1805
there's no shedinja gift, always is an evolution
seal some forms to remove virt call in constructor warning
2018-04-10 17:00:28 -07:00
Kurt
335379bd2e
Remove unneeded string
...
#1893
2018-04-08 17:54:09 -07:00
wwwwwwzx
27f33a6719
Update Chinese translations ( #1893 )
...
* Update Chinese translations
* Sync missing change
2018-04-08 17:51:06 -07:00
Egzon Qukovci Jusufi
e39269484c
Translated to spanish some of the lines (from 1 to 160) of MessageStrings ( #1892 )
2018-04-08 11:21:04 -07:00
Kurt
6ac8ed0098
Update translations
...
all supported langs now have all 3 translatable resources; translate
away!
2018-04-08 09:19:19 -07:00
smileynation
e7721f10ef
Update lang_ja.txt ( #1890 )
2018-04-07 22:29:19 -07:00
smileynation
bd78a9a3e4
Update text_Forms_ja.txt ( #1891 )
2018-04-07 22:29:10 -07:00
Kurt
7ef8a88678
Add 2 spaces to jynx OT trade name
...
lol nice error, translators
2018-04-07 16:25:52 -07:00
Kurt
be285917b9
Update ingame trade data
...
https://projectpokemon.org/home/forums/topic/44726-bug-in-game-trader-pokemon-flagged-illegal/
Thanks Jimmy Cerno!
2018-04-07 12:34:06 -07:00
Kurt
420efb72bb
Misc refactoring
...
use common edits to set pp
2018-04-07 11:40:01 -07:00
Kurt
9d3f7250a5
Clamp language values
...
pk3->pk4 threw errors
https://projectpokemon.org/home/forums/topic/44719-about-channel-jirachi/
should probably work that logic into a more generic getsafelanguage
2018-04-06 23:37:24 -07:00
Kurt
1f9f8c97f1
length check language & trash byte source
...
https://projectpokemon.org/home/forums/topic/44719-about-channel-jirachi/
future/invalid language values are out of range
fixes the symptom but not the root cause (permitting out of range
languages when generating a wc3->pk3).
2018-04-06 23:36:13 -07:00
Kurt
caa32c1516
Add alolan evo species check
...
can't change to a local variant form if it was originally obtained as a
non-variant form (no evolutions!)
2018-04-06 21:46:27 -07:00
Kurt
51612b8977
Add custom sort via passed func params
2018-04-06 21:33:25 -07:00
Kurt
1d4e815689
Extract more mesage strings
...
all common strings in forms used by multiple generations
would rather rework the individual generation strings to be unnecessary
with better interaction instead (if possible), as translating hundreds
of limited exposure strings is a drag.
2018-04-06 21:23:09 -07:00
Kurt
5d8ccf12d4
Fix kor playtime read
...
Closes #1888
Thanks @Bl4ckSh4rk !
2018-04-06 17:15:34 -07:00
Kurt
5e96c6e035
Extract main window strings to translatable class
...
Similar to LegalityCheckStrings
no resource files yet, will generate those tomorrow(?)
some strings are not translatable (useless gen6 passerby export text),
not really worth
2018-04-05 21:25:18 -07:00
Kurt
1122a3f21e
Shift kor gs pokedex bitflag region
...
-0x20 yields a match for seen/caught
https://projectpokemon.org/home/forums/topic/44692-i-have-a-question-about-gen2-of-pkhex/
Thanks BLACKBIRD!
2018-04-05 17:00:55 -07:00
wwwwwwzx
8710c7a517
Translations update ( #1887 )
...
* Update Chinese translation file - 2
* Fix up base stats label translations
2018-04-04 22:45:14 -07:00
Kurt
2f57630b4a
Clamp abilitynumber value
...
keep to 3 bitflags
1/2/H
2018-04-04 21:42:02 -07:00
Kurt
f56696bf5c
expand sorting capability
...
can replace the sorting function in SaveFile with any of the other
behaviors (or can just get->sort->set BoxData)
2018-04-04 20:30:49 -07:00
Archit Date
d65652a34e
Fix Showdown Imports for Nidoran ( #1886 )
...
Showdown Set isn't recognized because of the format `Nidoran-G (G)` where G is M/F
2018-04-04 18:30:54 -07:00
Kurt
bdb6b7a2f1
Add shiny indication for wc3 in mgdb search
...
https://projectpokemon.org/home/forums/topic/44675-about-event-database/
also fix some xml comments
2018-04-04 09:53:48 -07:00
Kurt
48cf658abd
Update translations
...
#1885
removes content not present, moves dev code to separate debug-only class
2018-04-03 18:46:32 -07:00
wwwwwwzx
159f1594e9
Update Chinese translation file ( #1885 )
2018-04-03 09:09:03 -07:00
Kurt
ad19496d94
Fix multiline translation val
2018-04-02 23:09:33 -07:00
Kurt
1777a09bde
Update translation files with all translatables
...
Closes #1883
Some controls could be manually pruned (like Gender labels), but nah
2018-04-02 20:55:10 -07:00
Kurt
58a84e3770
Merge branch 'master' of https://github.com/kwsch/PKHeX
2018-04-02 17:51:40 -07:00
Kurt
547c799eeb
Handle gen1/2 static encounters
...
levelup starts after initial moves
2018-04-02 17:51:37 -07:00
smileynation
15874798e6
Update lang_ja.txt ( #1882 )
...
Japanese transration.
2018-04-02 07:58:10 -07:00
Kurt
39f1805940
Fix gen2 met data setting
2018-04-01 20:25:40 -07:00
Kurt
d4e38dded0
Refactor time of day check/validate
...
Fixes time of day flitering property reference (met_day is always 0, so
it never reached)
2018-04-01 20:22:10 -07:00
Kurt
867c705597
Fix broken gen2 tests
...
add oddish to the mix
2018-04-01 15:51:55 -07:00
Kurt
d42eb4372f
Fix 4 egg move gen2 oddish
...
egg moves also can be taught in gen1, which causes the learn source to
be locked to a tradeback (removing egg moves that have IDs greater than
RBY's moves). Simplify gen<=2 parse preference ordering with this
addition to force egg moves to be acknowledged.
2018-04-01 15:04:53 -07:00
Kurt
07b2568b1f
Fix g2 caterpie generating
...
has no egg moves -> no moves generated!
2018-04-01 15:02:27 -07:00
Kurt
5e55b916fa
Handle fixed gender statics
...
Seems like a PID/Nature/Gender/Ability smart-setter is necessary for
other encounters
2018-03-31 21:55:59 -07:00
Kurt
ba4c911566
Refactoring & finish eevee test case
...
generates a legal pk* for every possible encounter; there's likely other
scenarios and more roughness to smooth out, but seems legit for now
2018-03-31 20:37:36 -07:00
Kurt
32f9f806db
Add other iencounterable->pkm generators
...
not tested
2018-03-31 00:43:41 -07:00
Kurt
0b4adf9763
Sync missing content
...
fixes tests
2018-03-30 22:11:24 -07:00
Kurt
0597833899
Track version of slots/static/trades
...
I think I set the version at the appropriate times to get all encounter
objects
2018-03-30 21:38:57 -07:00
Kurt
a89c0c3312
Rename egg game->version
...
add more gameversions (soon)
2018-03-30 21:37:01 -07:00
Kurt
b38abc22e2
Refactoring
...
add IVersion interface with common interactions
2018-03-30 16:31:40 -07:00
Kurt
2f30eb7c78
Fix rsbox checksum calc/write in blockinfo
...
F004-chk returned 32bits instead of 16
writing was writing to the head of the save file (lol)
2018-03-30 15:56:59 -07:00
Kurt
537ad33229
Add encounterlink gen
...
not tested
2018-03-30 01:02:37 -07:00
Kurt
214e684ff8
Add GetEncounterMoves method
...
dictionary mapping common gameversions to their associated obj
2018-03-30 01:02:22 -07:00
Kurt
d03ff147d4
Add template -> pkm method
...
fix signature if no versions are provided (empty params is [0], not
null)
2018-03-29 21:04:05 -07:00
Kurt
2ea1fea5f5
Refactoring
...
add GameVersion to generation
fix generating pk2 eggs
relocate some logic
2018-03-29 21:00:38 -07:00
Kurt
e74e7878cd
Lower dragonair encounter level req for trade
...
https://projectpokemon.org/home/forums/topic/44555-gen2-legality-issue-with-in-game-trade/
Thanks Bumidek !
2018-03-29 08:50:23 -07:00
Kurt
e5ccae906a
misc quality of life improvements
...
set egg friendship
allow SetRandomIVs to use a minimum fixed IV count
2018-03-28 20:56:58 -07:00
Kurt
76b4db1477
Add egg converter & test
...
only tested for gen7 egg->pkm (not to eventual set)
pretty sure a good chunk of the egg generation logic can be pulled out
for reuse in other IEncounterable generators (IEncounterable
extensions?)
2018-03-28 20:40:07 -07:00
Kurt
6333c42cf1
Add more suggestions for eggs
2018-03-28 20:38:21 -07:00
Kurt
1e13220e6e
Add IEncounterable -> pkm interface method
...
egg,slot,static,link,trade need to be implemented later
remove IEncounterable from PL6
2018-03-28 20:38:07 -07:00
Kurt
314a92b67b
Extend core api
...
add copy/fetch new
2018-03-28 20:34:58 -07:00
Kurt
4cc31ea5e2
Standardize move setter
...
no longer allow passing null, if array is too small, set zero instead.
2018-03-28 20:34:12 -07:00
Kurt
e026a8ab49
Add default trainer info
...
use in pkmeditor and utilize
2018-03-28 18:52:50 -07:00
Kurt
35e699cffa
Misc mg updates
...
pgf/wc6/wc7 received on future game -> random version
could eventually be replaced with a get-sane-version which checks if
OriginGame == 0.
fix wc3 random RS giving E (R+1=E)
2018-03-28 17:46:37 -07:00
Kurt
d794e71175
Extend contest-affection check to pre-gen6 transfer
...
Closes #1881
Thanks @ijuintekka !
Thanks @sora10pls !
2018-03-28 16:07:03 -07:00
Kurt
a0eb658ef2
Extract minimum trainer information requirements
...
If one wanted to extend ConvertToPKM to other IEncounterables, this
would be the provided obj containing the receiver's info
allows pkm gen without a savefile, which is nice?
2018-03-28 15:55:19 -07:00
Kurt
78616e1ad5
Add showdownset -> pkm encounter fetch test case
...
Test parsing glaceon, input must equal output
Test generating encounters for a specific version (exists only on Moon)
Test generating encounters for the same version (add handling trainer
data to permit Tutors)
fixes error in VC generations-present fetch which allowed movesets from
generations 3-6 lul
exclude negative/invalid gameversions
2018-03-27 19:45:22 -07:00
Kurt
5b4b6e4158
fix ability comparison
...
a==a obviously, need to check against the current ability
2018-03-27 09:02:56 -07:00
Kurt
a25425a277
Add pcd ability mismatch edge case
...
yay set PID but nah lets force an ability that doesn't agree with the
PID
https://projectpokemon.org/home/forums/topic/43724-gen-4-events-flagged-as-illegal/
2018-03-26 23:23:27 -07:00
Kurt
93ca091eb8
Fix gen4 event location string name output
...
legalityanalysis spat out the unshifted value or none at all (bank 3000
was not returned)
2018-03-26 23:22:11 -07:00
Kurt
1ca69965bf
store encountertrade nick/ot within object
...
allows for ot/nick fetch for a given language
2018-03-26 22:23:11 -07:00
Kurt
6abd2a22a4
Add oras contest master ribbon affection check
...
Each contest victory requires a contest participation; each
participation gives 20 OT affection (not current trainer!)
Thanks @WyrXIII , @JusLi, @Cresceda !
2018-03-26 16:42:18 -07:00
Matt
ff675ed6e5
Detect event contest affection boost ( #1880 )
...
* Detect event contest affection boost
* Re-order check
2018-03-26 10:43:42 -07:00
Kurt
4d3877bf7f
Add EncounterMovesetGenerator
...
lack of a better name; generates IEncounterable list.
2018-03-25 22:50:32 -07:00
Kurt
99a4c55579
Relocate some logic to core
...
party stats set when setting a slot to a save file
simplify set/delete slotchange duplicate logic
suggest better met locations beyond VC transfers
hatching a gen6 egg applies memories automatically
2018-03-25 19:05:49 -07:00
Kurt
a24e5aa742
Update personalinfo usages
...
less temp array usages, add methods for cleaner understanding
2018-03-25 13:54:30 -07:00
Archit Date
5bf4fde15c
Fix Showdown Import issues ( #1878 )
2018-03-24 21:47:57 -07:00
Kurt
828636856c
Change coin cap to fixed 50000
...
#1746
https://projectpokemon.org/home/forums/topic/44503-bug-report-gen-4-coin-counts/
max is 50000
https://bulbapedia.bulbagarden.net/wiki/Coin_Case
The Coin Case can hold up to 9,999 coins in Generations I, II, and III,
and up to 50,000 coins in Generation IV.
2018-03-24 17:29:48 -07:00
Kurt
1e708a2102
Simplify default met location fetch
...
now that IGeneration is available, don't call pkm.GenNumber (slower)
2018-03-24 17:28:56 -07:00
Kurt
a6977af19a
Pull out Contest Stat logic to interface
2018-03-24 10:36:48 -07:00
Kurt
c229d5cef4
Add RS & FRLG mail offsets
...
was only emerald prior
Thansk @Bl4ckSh4rk !
https://projectpokemon.org/home/forums/topic/44433-bug-rubysapphire-mailbox/?do=findComment&comment=228885
2018-03-23 23:06:51 -07:00
Kurt
17b771632e
Add settings editor to main navigation
...
shortcut ctrl-n (CoNfig)
Closes #1864
add debug lines for triggering translations to update
2018-03-23 22:54:26 -07:00
Kurt
d58278d170
Pull out stat modification logic
2018-03-22 22:43:56 -07:00
Kurt
0d69e803e1
Add gen4/5 synthetic trade logic
...
was previously present for gen6 and gen7 only, resulting in eggs in
gen4/5 not getting link trade values applied. that's really all.
https://projectpokemon.org/home/forums/topic/44437-bug-eggs-transfer-for-gen-4-dppt-and-hgss/
2018-03-21 21:10:23 -07:00
Kurt
d1cfdd782e
Rework ball / frame check passing
...
Two checks are performed for Gen 3 & 4:
A: Encounterability (wurmple, ball, ability)
B: RNG Compatibility (frame)
Original code only checked 'A'
Recent code ordered by 'A', but returned anything that matched 'B'. If
'B was not satisfied, an 'A' match would get deferred, allowing for an
eventual B & !A to be returned before a A & !B being returned.
yay bool logic
we want to prefer a RNGFrameMatch as well as a SlotCompatible match
original code (no RNG checks) retrieves with SlotCompatible just fine
recent adding in framematch resulted in deferring compatible if not RNG
frame, yielding !A matches before A & !B
maintain 3 queues (A & B get yielded immediately) to track A!B, !AB, and
!A!B
not necessary to check unown case anymore as it'll fall into the A!B
group. better performant to skip that check in favor of only adding for
fail.
thanks theSlayer!
2018-03-21 20:19:54 -07:00
Kurt
636736c3fa
Add g3 safari ball wild deferrals
...
Pineco is valid but also can be sourced to altering cave
similar for sandslash
Thanks theSlayer!
2018-03-21 17:30:19 -07:00
Kurt
f103a84fbd
add duc reading
...
i dont really want to add more than this, header/footer conversion can
be done separately.
2018-03-21 17:01:07 -07:00
Kurt
aedc0092b4
Rework translations
...
instead of:
controls on form->dict of names, look up line to find control
now:
dict of names->look up control to find name
faster overall, simpler, and updates the dictionary with new control
entries. browse thru forms that call translateinterface with one
language (english), then updateall(en) and dump to get the updated
translation files.
#1864
2018-03-20 22:34:44 -07:00
ReignOfComputer
bf1b685705
Translate Showdown Markings & Fix PT Selection ( #1872 )
...
Added translation strings for Apply Showdown Markings in CHS, French,
and Korean. International schools ftw.
Additionally, Portuguese was not accessible as it is Index 9 ("zh2",
which I assume is CHT, is at 8), so I've just hardcoded this bit since I
don't know if anything else relies on lang_val.
2018-03-20 08:36:15 -07:00
Kurt
42f5f9b051
Add smart move[] setter
...
Closes #1871 (smart-move setting is also done by batch editor)
2018-03-20 08:35:41 -07:00
Kurt
426ef1403c
Change pp call
...
was supposed to be with prior commit
2018-03-19 17:32:45 -07:00
Kurt
e4c2b5d77a
Split PPMax & PPCurrent edit methods
...
As noted in #1866
2018-03-19 16:21:29 -07:00
Kurt
9bb4120ff9
add faster pkm slot presence check
...
instead of checking if the array is empty, only check PID and species
2018-03-18 16:22:21 -07:00
Kurt
2c4e3358e4
Fix ninjask evo move comparison
...
https://projectpokemon.org/home/forums/topic/44413-bug-information-about-bug-found-on-the-new-version-180319/
2018-03-18 15:30:19 -07:00
Kurt
b0dcdf0948
Update 18.03.19
...
Update event binaries with latest from the Event Gallery
2018-03-18 13:42:29 -07:00
Kurt
26cc266dd1
Move type sprite fetch remapping to pkmutil
...
I still don't like it 100%
2018-03-18 11:25:57 -07:00
Kurt
f55028c1a0
Fix KChart errors
...
gen1 & gen2 types aren't laid out contiguously (yay bird type and extra
types)
fix gen2 type accessors looking at the wrong byte
type sprites now load correctly, and 3rd ability no longer throws an
error (forced to None).
2018-03-18 11:22:20 -07:00
Kurt
88ce27f26b
Add R/S roamer data offset
...
is different from emerald
Thanks TetsuyaGR!
https://projectpokemon.org/home/forums/topic/44407-bug-rubysapphire-roamer-bug/
(use concatall in encounters4)
2018-03-18 08:37:40 -07:00
Kurt
75dbec6038
Remove unnecessary switch entries
...
null return is only really useful for implementing; can remove the
chance for null when using the api
2018-03-17 20:05:35 -07:00
Kurt
49d92758c5
xd ribbon fix
...
lol
2018-03-17 10:36:37 -07:00
Kurt
e9a3b4acf1
Merge PIDType and bool? shiny property
...
Gen5 does not follow the same convention, 0 = non, 1 = rnd, 2 = always;
not gonna bother updating for just that one
bool? occupies 2 bytes; enum:byte is 1 byte.
should probably move validity checking logic into the IEncounterable
objects instead...
2018-03-16 19:35:55 -07:00
Kurt
d1a789eeab
Fix some pokedex4 behavior
...
https://projectpokemon.org/home/forums/topic/44347-gen-4-pokédex-forms-incorrectly-readwritten/
2018-03-16 17:54:47 -07:00
Kurt
274d2200a3
Correctly flag hidden7apricorn
...
[0] -> Last()
Thanks Davil!
https://projectpokemon.org/home/forums/topic/44374-bug-about-hidden-apricorn-voltorb-bronzor/
2018-03-15 19:04:14 -07:00
Kurt
3e9dabf46d
Set forced hatch egg friendship
...
use base friendship, obviously (previously used current egg ctr)
fix force hatch on gen2->gen1 handling with nickname
2018-03-14 22:34:15 -07:00
Kurt
2685fe29c2
Ban hidden-apricorn voltorb bronzor
...
Thanks @wwwwwwzx !
2018-03-14 08:10:12 -07:00
Kurt
46e1d8a4eb
Add ability to replace IV marking method
...
set the MarkingMethod to a desired func provider (out int markval, int
IVvalue, int IVindex)
#1862
2018-03-12 20:44:16 -07:00
Kurt
1cdbe6f4f8
Fix ditto5 IV order
...
closes #1863
2018-03-12 19:34:54 -07:00
Kurt
b41095bb28
ShowdownSet gender/markings
...
Closes #1862
2018-03-12 17:40:09 -07:00
Kurt
102550174e
Simplification
...
invalid/unknown usages were incorrectly interchangable; dex-sets were
looking at Unknown which was impossible for some cases.
only use GameVersion.Unknown as a temp placeholder for later resolution
by the user.
2018-03-11 18:07:48 -07:00
Kurt
22bde0af52
Fix incorrect variable reference
...
new SAV3() throws exception, no more!
2018-03-11 14:42:56 -07:00
Kurt
59c01396ab
Add string[] -> showdownset & showdownset[]
...
remove some unnecessary pre-processing / allocation (ToArray)
pls lmk if there's any sets that break (should really have parsing test
cases)
2018-03-11 11:39:58 -07:00
Kurt
aa65d88d3d
Cache pressure slot instead of saving all to list
...
faster to do:
null check & comparison for each
vs
collection add (especially if growing collection)
don't evaluate all slots (faster), capturing the dexlevel[] object is
fine until the enumerable is discarded
2018-03-11 11:02:02 -07:00
Kurt
5148fd2c4e
Add minimally filtered encounter generators
...
Filters by species at most, resulting in something that can be scanned
for a preferred encounter.
2018-03-11 00:29:31 -08:00
Kurt
94811d9052
Split up IEncounterable generators
...
Can break the filtering out into smaller methods such that the generator
can return results with less strict filtering
2018-03-10 19:51:09 -08:00
Kurt
84c5decfc0
Comment out unused
...
temp = temp permanent lul
2018-03-10 19:40:57 -08:00
Kurt
2bd9d99d9e
Refactoring
...
WinForms->Core logic absorbing (CommonEdits)
loading ShowdownSet now applies properties to PKM instead of PKMEditor
Contest/IVs for Static/Trades are no longer set by default (less object
allocations), and are now checked by the encounter generator
2018-03-10 18:03:09 -08:00
Kurt
9da1913f1b
Only check static IVs if original IVs still exist
...
https://projectpokemon.org/home/forums/topic/44319-bug-vc-mew/
Thanks Davil!
2018-03-09 20:00:13 -08:00
Kurt
cda2cfcefd
Clean up EncounterLink
...
no new gen6 pkm link gifts, simplify usages
2018-03-09 18:58:00 -08:00
Kurt
452ffe2369
Refactoring
...
relocate location of stuff
2018-03-08 21:18:32 -08:00
ReignOfComputer
8147258e9e
Unban Gen 7 Starters HA ( #1860 )
...
HA Starters Event via Pokemon Bank
2018-03-08 05:55:47 -08:00
Kurt
cbf4038a95
Refactoring
...
relocate gift data storage out of legal.cs
2018-03-05 22:19:56 -08:00
Kurt
21cdf4f642
Reorganization
...
wonder if it's possible to provide a more lightweight core by pulling
out legality stuff to a separate project?
2018-03-05 20:49:45 -08:00
wwwwwwzx
c9a54307c4
Fix WC6/7 IV generation ( #1857 )
...
https://pastebin.com/bbpS6svw
IV lock doesn't work for IV3 case
2018-03-02 16:17:14 -08:00
Kurt
e4210e2b3e
Misc api improvements
...
extract common nature amp logic
generic ienumerable copyto which now returns count of elements copied
(maybe useful later). prior usages never tried to copy an enumerable
larger than the dest array (now length checked).
2018-02-28 21:50:50 -08:00
Kurt
24982fe8c5
Misc simplifications
2018-02-28 21:05:50 -08:00
Kurt
1411933e27
Relocate pkm stat controls to separate usercontrol
...
splits the logic up
change hypertrain from ctrl (prevents 30/31 setting) to shift (allows)
2018-02-26 21:22:35 -08:00
Kurt
89d3437d0b
prevent blue flabebe apricorn/beast
...
closes #1850
impossible SOS's were already removed from the SOS list (e.g. no slots
in the SOS table with w.Species == 669 && w.Form == 3)
2018-02-24 17:28:07 -08:00
Kurt
934757eac1
Add Bank7 r/w
2018-02-24 13:03:32 -08:00
Kurt
f9002c6cc9
Add trashbyte copy for OT import on gen1/2
...
Closes #1849
NAME_LENGTH is 11 for both gens and the offsets don't vary between
languages, so it's a simple fetch.
2018-02-22 22:42:50 -08:00
Kurt
016b75fe83
Fix necrozma showdown->short names
...
closes #1848 , had deleted short->showdown conversion
Thanks @architdate !
2018-02-21 20:40:06 -08:00
Kurt
ee1196a57d
Set playedtime accurately
...
closes #1847
override playtimestring if max time... better than nothing
2018-02-21 15:22:43 -08:00
Kurt
d20f14504e
Refactoring
...
pull out BlockInfo logic, standardize common block checking
reduces array allocations
2018-02-19 11:33:37 -08:00
Kurt
26ca111630
Fix SetHPIVs order
...
speed IV last -> speed IV first
closes #1844
2018-02-18 09:54:17 -08:00
Kurt
e6a74b0145
Only skip nickname set if currently same
...
Closes #1842
2018-02-17 17:42:00 -08:00
Kurt
47643f49b6
remove linq personalinfo bit fetch
...
reads the bits out of the original array (saves a few ms by not
allocating/gc)
2018-02-16 19:34:42 -08:00
Matt
43d8f74342
Fix Swampert dex forms ( #1839 )
2018-02-16 16:30:34 -08:00
smileynation
d7fa703b99
Update lang_ja.txt ( #1836 )
...
Add change translation files.
2018-02-15 19:41:05 -08:00
Kurt
e33bd4c327
Add Dialga/Palkia headbutt location
...
turns out route 47 (below route 48) also yields dialgapalkia, which also
has a tall grass patch that can be headbutted from.
Closes #1833
2018-02-15 19:40:42 -08:00
Kurt
c825d5919c
Fix wc4->pgt crypt
...
array isn't encrypted in place (didn't use return value)
Closes #1835
2018-02-15 19:07:41 -08:00
Kurt
2b49ab0034
Fix return value for forme parsing
...
false => failed to parse
Closes #1834
2018-02-15 18:59:38 -08:00
Kurt
f8bf3e400b
Misc tweaks
...
Add bulkstorage SaveFile template
remove unused using
un-virtual box property (don't override behavior)
Split new-USUM island names (unused)
Remove island names from valid egg locations (thanks Davil !)
https://projectpokemon.org/home/forums/topic/43874-bug-met-location/?tab=comments#comment-227684
2018-02-15 17:05:45 -08:00
Kurt
89248b30a9
Re-add rufflet pelago for sn
...
Thanks @wwwwwwzx !
2018-02-12 17:38:31 -08:00
Kurt
68c782e661
Handle version mega import/export
...
Closes #1832
2018-02-12 17:36:15 -08:00
Kurt
28180687a5
Add transfer2 future evos for legality reuse
...
https://projectpokemon.org/home/forums/topic/43827-gsc-mismagius-treated-as-illegal/
2018-02-11 20:48:36 -08:00
Kurt
f1cd1d8b50
Fix pgt->pk4 obj usage
...
clone the data, don't reuse & tamper with pgt data...
thanks @ReignOfComputer !
2018-02-11 17:28:23 -08:00
Kurt
38fb30e847
Remove Punishment from Murkrow USUM eggmoves
...
Closes #1829
"In Pokémon Ultra Sun and Ultra Moon, Murkrow is programmed to be able
to learn Punishment through breeding, but no other Pokémon in the Flying
Group can pass down Punishment as an Egg Move in those games. Vullaby
and Mandibuzz are the only Flying Egg Group Pokémon that can learn
Punishment, but they cannot pass down the move due to being female-only
species."
2018-02-10 18:56:06 -08:00
Kurt
d706d825a9
Handle legal pichu form values
...
Closes #1828 , thanks @SpiredMoth !
slightly optimize batrev key init
fix exception for pkm loading switching between gen3->4 saves
2018-02-10 17:43:00 -08:00
wwwwwwzx
9187be8177
Update CHS translation files ( #1827 )
...
* Update CHS translation files
* Fix crabrawler outliers
Double check the wild encounters level range again.
2018-02-10 15:29:22 -08:00
Kurt
dae038d59c
Use hidden power spread with most 31IVs w/guessing
...
#1826 (HP Ice with ATK=0 now prefers flaws in only defense rather than
HP and defense).
2018-02-09 21:27:57 -08:00
Kurt
f289249b2d
Add oddball crabrawler berry pile levels
...
thanks @wwwwwwzx !
2018-02-09 21:26:28 -08:00
Kurt
033d5baa06
Check EC-PID same for gen1/2 transfers
...
Fix PID->EC on gen<3 transfers
https://projectpokemon.org/home/forums/topic/43779-about-vc-pokemons-pid-and-encryptionconstant/
2018-02-08 18:47:52 -08:00
Kurt
d6fbd0f0d7
Reorder gsc encounters
...
new string resources have shuckle last
thanks @sora10pls
2018-02-08 17:05:15 -08:00
Kurt
22a2056a91
Fix showdownset IV HPtype export
...
no need to reshuffle IVs since the pkm->showdownset defines the IVs in
the speed-first order
Closes #1824
2018-02-07 20:59:36 -08:00
Kurt
05c4a0f286
partner cap pikachu update
...
great job gamefreak
allow current handler to be 0, remove static encounter as the data was
sneakily faked as a WC7 in the events gallery.
Closes #1817 ; still needs to update with new pikachu pid method
allowing shinies (next update).
2018-02-07 19:56:02 -08:00
Kurt
07bd2412cb
Add all deco unlock
...
#1819
not exposed via GUI
2018-02-07 18:29:45 -08:00
Kurt
93fd47a8e5
Rework hidden power IV setting
...
If the Hidden Power set doesn't match what is required (missing Hyper
Trained IVs), will need to adjust IVs.
Compute the first matching hidden power IV set by permuting flawless IVs
to flawed.
Closes #1821
2018-02-07 18:28:56 -08:00
Kurt
9408255bee
Add other international (non english) gen2 tradeOTs
2018-02-06 23:09:00 -08:00
Kurt
af0e05f6af
Fix sav editing from direct memcard saves
...
Thanks @sora10pls for finding this
(just use the existing MC data)
2018-02-06 20:33:32 -08:00
Matt
1b2aded412
Allow shiny Partner Cap Pikachu ( #1820 )
...
good job Game Freak https://twitter.com/wwwwwwzx/status/961057063198539778
2018-02-06 18:54:45 -08:00
Kurt
05355f3566
Fix gsc shuckle jp name
...
Closes #1818
strengthen language specific checks (JP or INT, not any)
2018-02-05 20:55:10 -08:00
Kurt
246b9d46a9
Add GSC fishing swarm encounters
...
Closes #1814
2018-02-04 23:14:12 -08:00
Kurt
2a638a957f
Refactoring
...
compress some ideas
2018-02-04 19:17:44 -08:00
Kurt
e3ca751e2c
Add dp/hgss shedinja gender glitch handling
...
not providing pkmeditor ability since Pt behaves correctly.
Closes #1813 , thanks @ultima-soul & @Lusamine !
2018-02-04 18:12:20 -08:00
Kurt
420a18ea85
Rework shadow lock checking
...
tested for 2 locks, later commits with legality check implementation
will feature more lengthy lock checks (test case automation).
https://pastebin.com/VdbjWaqL
(species doesn't matter since most are 50/50 ratio)
2018-02-04 16:33:53 -08:00
Kurt
c20f03434f
Add FrameCache object
...
arbitrary access for RNG frame results, only generating frames when the
frame is unavailable. all calculated frames are cached.
to be used in RNG searching where caching seeds is necessary (repeat
checks)
2018-02-04 16:30:50 -08:00
Kurt
35e5dbfb32
Add eterna forest honey tree location
...
Closes #1812 , thanks @ultima-soul !
2018-02-04 14:03:35 -08:00
Kurt
04888a5c39
Add crabrawler berry pile scripted encounter
...
https://projectpokemon.org/home/forums/topic/43628-crabawler-bug/
doesn't exist in static encounters, maybe is set up like the swooping
encounters of gen6.
2018-02-04 13:04:45 -08:00
Kurt
8695666044
Fix showdown set form import off by 1
...
closes #1811
2018-02-04 09:44:19 -08:00
Kurt
9a20734be2
Update lock checks
...
test case
https://pastebin.com/f4K7uc56
only checked for single locks
2018-02-04 00:06:07 -08:00
Kurt
14fc71a5d2
Fix Zygarde Aura Break formechange detect
...
original was AltForm != 1, 0 is also invalid so >1 suffices.
remove parameter from method & update usages
2018-02-03 21:12:36 -08:00
Kurt
118a213b6c
Fix backwards conversion copy order
...
reflection (now only used for backwards conversion) will use destination
order instead of source order so that the destination can order itself
for quirks
redo method call (probably breaks someone if they update, maybe pk2pk)
2018-02-03 15:32:45 -08:00
Kurt
886398184f
Add pk4/bk4 shared class
...
reflection no longer used for official transfers
2018-02-03 15:31:35 -08:00
Kurt
c5655166bf
Add shared pk3/xk3/ck3 class
...
standard generation 3 pkm content & interactions
generic inter-converter (more efficient than reflection)
update conversion methods; specific format conversion is now in the
object's src file now.
may be worth doing for gen4 pk4<->bk4
2018-02-03 12:42:06 -08:00
Kurt
0a22ccdb2b
Disallow invalid pelago levels
...
simplify pelago slot generation too
linq for now; can be silly and make it a for loop but meh
2018-02-02 20:52:44 -08:00
Kurt
382c94c348
drop sm pelago exclusives back to 1-55 not 37-55
...
https://projectpokemon.org/home/forums/topic/43711-vullaby-invalid-error/
2018-02-02 20:10:43 -08:00
Kurt
d9d27a52b7
Refactoring
...
explode xorpad into more reusable ideas
2018-02-01 22:09:31 -08:00
Kurt
b603bc87b8
Update shedinja ninjask move checks
...
check level of source moves for any incompatibility in non-bred cases.
Closes #1805
2018-02-01 19:57:02 -08:00
Kurt
999427f484
Update gen2 egg generator
...
Level = Level is equivalent to Level = 0
update EggInfoSource to use Level instead of LevelMin (LevelMin returns
Level, just be clear on usage)
update VerifyCurrentMoves so that only gen1/2 do the gen1/2 move update
methods. Recently extended all encounters to have a generation property;
we only care about gen1/2 here.
https://projectpokemon.org/home/forums/topic/43655-pokemon-crystal-egg-mark-as-not-legit/
2018-01-30 20:36:22 -08:00
Kurt
84a0381050
Add Italian to gb languages
...
https://projectpokemon.org/home/forums/topic/43655-pokemon-crystal-egg-mark-as-not-legit/
2018-01-30 20:34:11 -08:00
Kurt
836566004f
Use CXD met location string on verbose output
...
was previously using RSEFRLG locations for CXD encounters
2018-01-30 20:24:45 -08:00
Kurt
1ca9180e21
use SlotList view to dynamically show slots ( #1798 )
...
Closes #1795 by redoing the controls
Allows for a specified slot type & offset to be passed, can easily add extra slots by updating the GetExtraSlots extension method.
2018-01-30 18:52:55 -08:00
Kurt
c4865c6c0a
Fix kommo-o-totem detection
...
psim lexing sucks lul
Closes #1796
2018-01-30 16:18:39 -08:00
Kurt
7063ea2971
Remove vc1 pay day mewtwo restriction
...
Closes #1794
2018-01-30 09:38:45 -08:00
Kurt
4ac92b9418
Update nincada->shedinja evo chain check
...
Thanks @admiral-fish & @Marty-D !
2018-01-29 20:52:05 -08:00
Kurt
834d115e3a
Add extra slot fetch utility
...
fix resort offset fetch (+=4)
2018-01-29 20:15:51 -08:00
Kurt
e472bfe278
Refactoring
...
move slotchange to core
2018-01-29 17:52:21 -08:00
Kurt
d7eae51c1f
Use showdown specific gender culture for formID
...
Closes #1793 , the form was returning -1 because it was expecting ♀ not
F
2018-01-29 17:20:12 -08:00
Kurt
74f185591a
Fix shiny/nonshiny egg mysterygift link trade checks
...
thanks @Admiral-Fish for finding this case
2018-01-28 23:40:57 -08:00
Kurt
9085dfd950
Allow backwards conversion on hax
...
works somewhat on drag&drop individual files, not guaranteed to work for
all pkm formats
https://i.imgur.com/v3i3ON9.png
Closes #1792
2018-01-28 22:47:03 -08:00
Kurt
9e7a4d01ab
Update blank constructor
...
first declared constructor is a static constructor, skip that one by
filtering out !static
2018-01-28 21:40:42 -08:00
Kurt
2365e2394c
Add eggcycles override for Odd Eggs
...
not gonna bother checking for exp < 125 because after transfer these are
indistinguishable from regular eggs.
2018-01-28 09:46:11 -08:00
Kurt
2828c89497
Update 18.01.28
...
Update event binaries with latest from the Event Gallery
2018-01-28 00:31:35 -08:00
smileynation
3ff72a3f51
Update flags_c_ja.txt ( #1788 )
2018-01-28 00:19:18 -08:00
Kurt
735ff26486
Rework GetEncounterMoves to match games
...
Closes #1787
Noticed that the search-backwards approach for GetMoves yields Sludge
for muk even though it shouldn't be allowed
im fine with this for now because gen2 never had online checks and any
current-gen checks allow relearning.
2018-01-28 00:09:11 -08:00
Kurt
eb505303bb
Fix vc backups acting like gb era saves
...
ends with .dat only works if the real file ends with dat
load the filename data after stripping off the bak filename data
#1787
2018-01-28 00:03:49 -08:00
Kurt
13e7d8ff85
Fix dragonair ingame trade genders
...
#1787
2018-01-27 23:23:10 -08:00
Kurt
bfe4f3222d
Don't update HP IVs if IVs already provided
...
Closes #1786
2018-01-27 20:18:38 -08:00
Kurt
282676e2f2
Refactoring
...
reduces mental footprint
2018-01-27 17:49:18 -08:00
Kurt
bc61980663
Add EVENT_GOT_GS_BALL_FROM_POKECOM_CENTER
...
c60f1331fe/constants/event_flags.asm (L851)
2018-01-27 12:54:07 -08:00
Kurt
ca2898d648
Rework gbc celebi detection
...
disallow outside jp games
2018-01-27 11:46:51 -08:00
Matt
705098418b
Add Odd Egg event flag ( #1783 )
2018-01-27 10:16:37 -08:00
Kurt
0e7350ee9e
Update korean vc string checks
...
https://projectpokemon.org/home/forums/topic/43610-legality-about-gen-2/
2018-01-27 09:45:33 -08:00
Kurt
c066df243f
Misc fixes/updates
...
Fix crystal lacking met level<->current level checks
Fix met location loading for gen2 saves (gen7 sav loaded gen1/2 pkm ->
load gen2 sav)
refactor some logic with pattern matching/consistent method names
2018-01-26 09:19:20 -08:00
Kurt
48564d7e30
Fix celebi iv check
...
update version ID as well
Closes #1775
2018-01-25 20:39:32 -08:00
Kurt
9b7b0b25d4
Flag iv<5 celebi
...
thanks @sora10pls
2018-01-25 19:34:18 -08:00
Kurt
58e374bcc6
Add celebi / more crystal legality handling
...
Closes #1772
2018-01-25 19:25:10 -08:00
Kurt
802105d22d
Allow pay day mewtwo, disallow dizzy punch
...
#1772
transfer pk1->pk2->pk7 for mewtwo knowing dizzy punch, just so we can
keep Pay Day
2018-01-25 19:17:42 -08:00
Kurt
4c93183575
Add jp vc gen2 sizes
...
so many so consistent
2018-01-25 18:30:09 -08:00
Kurt
5472f869cf
Remove some crystal vc checks
...
now legal
assuming x->kor7 sets the language val based on the cart language,
should be good for the kor crystal checks.
2018-01-25 09:14:25 -08:00
Kurt
1db5161a59
Add shiny star to pk1 filename export
...
closes #1770
2018-01-25 08:50:17 -08:00
Kurt
b69a6df6e7
Add roamer glitch IV collision detection
...
M1 is checked before M1R. A M1R PIDIV can also be a M1 PIDIV, so check
that collision.
https://projectpokemon.org/home/forums/topic/43567-gen-3-suicune-unaffected-by-roamers-glitch/
2018-01-24 19:07:03 -08:00
Kurt
713e9ea209
Compress box padding
2018-01-23 17:18:37 -08:00
Kurt
b229a947f2
Fix pt/hgss egg location handling 4->5
...
Closes #1766
pt/hgss egg location data is lost on transfer, retaining faraway place
only.
2c8e2176e9
fix was incorrect
2018-01-21 11:57:34 -08:00
Kurt
e616b56bfa
Remove uncatchable grubbin static encounter
...
#1763
2018-01-18 14:06:17 -08:00
Kurt
2063cef3e4
Fix arrays not being cloned
...
don't use the existing data array silly -- i was paranoid long ago for a
reason
all other SAV clone methods don't return the Data array, only these
#1764 additional behavior noted
2018-01-18 14:05:34 -08:00
Kurt
387030e16f
Fix 7th gen pikachu altform check
...
https://projectpokemon.org/home/forums/topic/43498-bug-about-event-pikachu/
2018-01-18 13:50:29 -08:00
Kurt
75c67b02b9
Merge pull request #1760 from smileynation/patch-11
...
Update flags_dp_ja.txt
2018-01-16 19:32:41 -08:00
Kurt
b74bf7d499
Misc simplification
...
no functional change, just compute hash over array span instead
2018-01-15 17:51:33 -08:00
Kurt
17e4bdbe3a
Add pikachu7 forme nongift check
...
other branch was unhandled, flag if we have a mismatch
closes #1762
2018-01-15 17:50:33 -08:00
smileynation
d01ad5c4ae
Update flags_dp_ja.txt
2018-01-14 15:55:47 +09:00
Kurt
06733d6e34
Refactoring
...
Split up c-gear skin bitmap, move generic handling to core
2018-01-13 21:31:02 -08:00
Kurt
6caefef181
Add cgb->psk & misc clarifications
...
Closes #1699
tested on black2 & white, skin isn't corrupt on game boot and appears
correctly
still don't like setpixel/System.Drawing reliance (maybe split logic to
CGearSkin & CGearSkinVisualizer) for PKHeX.Core compat
2018-01-13 16:32:57 -08:00
Kurt
029539003b
FormChange check: use original form not current form
...
Closes #1758
noticing the different usage for species (encounter species vs current),
iterating over possible dexlevels (unnecessary?)
2018-01-13 12:10:17 -08:00
Kurt
fb6738f18b
Add unown 2->7+ shiny check
...
closes #1755
also:
fix vc transfer checks not being called (EncounterOriginalGB is no
longer GBEncounterData).
remove usages of GBEncounterData -- class is (as of a ~~month ago) now
never leaked out of the EncounterGenerator -- always returns the actual
encounter data as the wrapper is not needed.
simplify logic flow / references
2018-01-10 16:16:35 -08:00
Kurt
c751c987a9
Add DebutGeneration get
...
https://projectpokemon.org/home/forums/topic/43378-generation-search-in-pkmdb-andor-batch-editor/
(less than) < and (greater than) > not currently supported (no plan to
add, would need to rewrite value eval logic)
2018-01-10 15:40:33 -08:00
Evan Dixon
5a4ddd685c
Update Project Pokemon URLs in comment
2018-01-08 13:15:19 -06:00
Kurt
701edbc592
Remove KOR language from gen3 selection
...
add flag for non japanese lang gen3 eggs
Closes #1747
2018-01-06 22:43:48 -08:00
Kurt
63a983749e
Don't generate encounter slots for eggs
...
Closes #1749
2018-01-06 21:51:58 -08:00
Kurt
659f2098a9
Fix sav4 coin read
...
#1746
2018-01-06 21:36:44 -08:00
Kurt
218c20d804
Add sav4 coin edits to misc4
...
closes #1746
2018-01-06 14:02:55 -08:00
Kurt
8cf97f3761
Add pom-pom edge case
...
dash was stripped out during conversion
closes #1744
2018-01-06 09:40:30 -08:00
Kurt
6a9e2ed4b9
Refactoring
...
improve speed for resource fetch, add optional Shiny parameter
(currently unused)
#1735
2018-01-02 16:53:39 -08:00
Kurt
0f21fc2217
add location interface for verbose analysis output
...
indicates met location for transferred mons
most gen1/2 encounters won't show values due to the location not being
stored respective to the string tables (anyone wanna do a location remap
after initial load?)
2018-01-02 12:00:41 -08:00
Kurt
5888898e7d
fix gen2 egg met level mod
...
https://projectpokemon.org/home/forums/topic/43278-gen-2-hitmonlee-and-hitmonchan-flagged-as-illegal-if-location-is-mt-mortar-at-level-10/?tab=comments#comment-225577
2018-01-01 21:51:36 -08:00
Kurt
76385a6b4a
Fix gsc pre-evo species chain filtering
...
simplify gsc check to do only once
https://projectpokemon.org/home/forums/topic/43278-gen-2-hitmonlee-and-hitmonchan-flagged-as-illegal-if-location-is-mt-mortar-at-level-10/
2018-01-01 13:53:28 -08:00
Kurt
e79a35d387
Fix long OT name length setting
...
StringLength is the raw buffer size, needs to be offset by 1 as the
string length enforced does not consider the terminator
12char OT name in sav7 loaded to tabs -> load gen1/2 save = exception
(now fixed)
2018-01-01 11:27:45 -08:00
Kurt
cfe78a7a0c
Add rby power plant static encounters
...
https://projectpokemon.org/home/forums/topic/43272-small-electrode-legality-bug/?tab=comments#comment-225537
2018-01-01 10:38:38 -08:00
Kurt
1b409dd327
Ban phione egg in non-pokeball
...
Thanks Davil!
https://projectpokemon.org/home/forums/topic/43262-bug-phione-ball/
2017-12-31 09:56:27 -08:00
lilymaniac
e58696cd56
Update Korean translation
2017-12-31 15:17:04 +09:00
Kurt
14821dfb82
Fix catchrate set auto-fix
...
https://projectpokemon.org/home/forums/topic/43252-pk1-pokémon-files-arent-holding-items-when-imported-to-gen-2/?tab=comments#comment-225459
2017-12-30 10:40:28 -08:00
Kurt
ca20e78269
pkm crypto Refactoring r2
...
condense repeated logic, reduce overall operations
removes 1 array alloc for pkm encryption (shuffle clones the array, so
don't clone->clone)
removes 1 array alloc for pkm decryption (mutate encrypted array), be
aware that no current use cases input an encrypted region and expect the
reference to stay encrypted (always was a temp array).
remove duplicate bounds checks (early return & for loop)
2017-12-29 15:29:31 -08:00
Kurt
0c2b16391f
fix spanish ranch gift name check
...
oops
2017-12-29 13:08:06 -08:00
Kurt
90260187f7
Add light of ruin & plasma fists as invalid sketch
...
moves not available for sketch without hacking a specimen in
https://projectpokemon.org/home/forums/topic/43244-two-problems/?tab=comments#comment-225421
2017-12-29 12:00:06 -08:00
Kurt
34188f275a
misc perf improvements
...
reduce linq usage / reduce obj creation in tight loops
speed++
2017-12-29 10:40:00 -08:00
Kurt
1d405d63c8
speed up pkm crypt
...
GetBytes returns an array that is immediately discarded (GC pressure)
reduces overhead when loading large pkm collections from save files
(shaved off a couple seconds from my loading from 200+ bak saves)
could probably go faster with unsafe code to r/w ushort directly
then again im profiling under debug but i'd assume the improvements made
actually do improve speed for release builds
2017-12-28 23:24:12 -08:00
Kurt
dccad6c2f4
Simplify/fix UnSanitizeString
...
Species and Nicknamed params were never used; foreign always resulted in
true for cases when it actually mattered.
Filter to the non-fullwidth characters, check the char type (latin base
vs jp/zh/ko) in order to determine if the full/half symbols should be
squished
could be faster replacing char instead of string, so change those
add two test cases for half width & full width string
sanitization/unsanitization
2017-12-28 22:50:32 -08:00
Kurt
43cb0e8d7d
Provide more accurate met level for eggs
...
Gen6 egg with met level != 1 (ie 98) will use the gen3-4 metlevel
branch.
fuzzed input from #1728 to be hacked (met level = 98)
2017-12-28 10:01:48 -08:00
Kurt
a1f2f8708a
Refactoring
...
pass identifier on cloning pkm
remove unnecessary ref for passing Data (not modifying array reference)
const some magic numbers
2017-12-27 16:36:24 -08:00
Kurt
61b65198f2
Allow box name editing on gen2
2017-12-27 15:52:29 -08:00
Kurt
1e388fb85a
Add first unown seen on dex set
...
immediately after unown dex:
c2a7216d9b/wram.asm (L2714-L2722)
per discussion on forums:
https://projectpokemon.org/home/forums/topic/43179-bug-unown-sprite-glitched-in-pokédex-in-gen2/?tab=comments#comment-225342
expose some useful properties for the pkhex.core api (unlock all, unlock
individual, define which unown shows up)
2017-12-27 09:56:04 -08:00
Kurt
3445b46526
Remove unnecessary array cloning
...
new objects would always clone the input array; only clone on object
cloning (keep the original array reference on initial creation from
bytes)
2017-12-26 21:38:19 -08:00
Kurt
5ec99b6c1c
Refactoring
...
expose individual types, items, and abilities
2017-12-26 18:54:08 -08:00
Kurt
dbe000d08e
Add some overloads for non-specified generation
...
fetches current gen if used without generation parameter
2017-12-26 18:54:07 -08:00
Kurt
5580d6a7d4
Extend set obj to apply to pkm data
...
var psimSet = new ShowdownSet(Clipboard.GetText());
psimSet.ApplyToPKM(pkm);
2017-12-26 18:54:07 -08:00
sora10pls
c3d5266b89
Add XY gift Lapras ability check
2017-12-23 18:28:00 -05:00
Kurt
ea76d6a899
Misc tweaks
...
minor perf improvements (don't ToList for encounter slots, store all
slots incrementally); has better performance for legal pkm checks
2017-12-23 11:49:20 -08:00
Kurt
7f21728e84
Add area->location references to remaining slots
2017-12-23 11:48:10 -08:00
Kurt
9e2bd8f64a
fix pokewalker course flag set
...
07FF_FFFF
not
7FFF_FFFF
2017-12-21 14:28:19 -08:00
Kurt
431baec087
Merge pull request #1716 from smileynation/patch-9
...
Update text_cxd_00000_ja.txt
2017-12-19 18:42:17 -08:00
smileynation
0615895dce
Update text_rsefrlg_00000_ja.txt
2017-12-20 11:11:43 +09:00
smileynation
7fb7487e6b
Update text_cxd_00000_ja.txt
2017-12-20 11:08:28 +09:00
Kurt
5e59e20ea1
Store matched encounter generation
...
previously was only defined for gen1/2, why not all gens
can now query encounters in Core for encounters per generation via
reflection; can help group encounters for data vis or be faster than
getting individual gen numbers
2017-12-18 16:17:21 -08:00
Kurt
80baaea3b7
add b2w2 n's pokemon PIDs
...
add b2w2 fixed PID encounters (N's Pokemon), move nsparkle to this class
redo static encounter cloning
2017-12-18 15:25:40 -08:00
Kurt
9263856845
Add apricorn pouch editing
2017-12-18 09:36:53 -08:00
Kurt
60787e652c
Add new text ja flag resources to project
...
re: previous pull requests
2017-12-17 21:35:06 -08:00
Kurt
24b5cc48ed
Fix gb encounter move comparison
...
don't calc NoMoveReminder for non-gen2 formats, also fix comparisons
(gen1 || gen2&&noRemind)
Closes #1707
2017-12-17 21:26:31 -08:00
Kurt
453f66e2b4
Merge pull request #1709 from smileynation/patch-3
...
Create flags_oras_ja.txt
2017-12-17 20:27:51 -08:00
Kurt
a1bf7e1b3a
Merge pull request #1710 from smileynation/patch-4
...
Create flags_b2w2_ja.txt
2017-12-17 20:27:45 -08:00
Kurt
dc9e83fcfe
Merge pull request #1711 from smileynation/patch-5
...
Create flags_bw_ja.txt
2017-12-17 20:27:38 -08:00
Kurt
c88024534a
Merge pull request #1712 from smileynation/patch-6
...
Create flags_pt_ja.txt
2017-12-17 20:27:27 -08:00
Kurt
14acaa6d04
Merge pull request #1713 from smileynation/patch-7
...
Create flags_dp_ja.txt
2017-12-17 20:27:22 -08:00
smileynation
673147b94f
Create flags_hgss_ja.txt
2017-12-18 13:04:25 +09:00
smileynation
6331758973
Create flags_dp_ja.txt
2017-12-18 13:04:01 +09:00
smileynation
5b4f24e54a
Create flags_pt_ja.txt
2017-12-18 13:03:37 +09:00
smileynation
c545c53121
Create flags_bw_ja.txt
2017-12-18 13:03:01 +09:00
smileynation
54e1410f78
Create flags_b2w2_ja.txt
2017-12-18 13:02:50 +09:00
smileynation
fd33e4e7a0
Create flags_oras_ja.txt
2017-12-18 12:56:52 +09:00
Kurt
810ec39ee0
add recent pr flags resource
...
#1708
2017-12-17 19:33:26 -08:00
smileynation
c2031bf347
Update flags_xy_ja.txt
2017-12-18 11:43:03 +09:00
smileynation
037ab76d45
Create flags_xy_ja.txt
...
I can not understand the meaning of Statuette and can not translate.
2017-12-18 11:31:34 +09:00
smileynation
205f141c44
Update text_Ribbons_ja.txt
...
Gen3, Gen4 Ribbons transration.
2017-12-18 10:29:57 +09:00
Kurt
47eee3aa98
Add roto powers as held items
...
not gonna add sprites because these are useless, anyone can submit via
pr (image might need downscaling to <15x15)
Closes #1703
remove useless null checks (throws the exact same exception it would if
it were not there, except without detail)
2017-12-16 19:52:06 -08:00
Kurt
2dbdb35955
Misc tweaks
...
possibly fix UI not-1x scaling screwing up drawn pkm images with
items/shiny/illegal.
simplify some logic -> speed improvements (wow so noticable /s)
2017-12-16 18:29:10 -08:00
Kurt
21c1dde3a7
Fix static encounter gift / egg edge case
...
extract EncounterStatic match determination; in doing so fixes "lvl" by
passing byval.
Pichu encounters (2) come before the Gift level 25 pikachu, causing lvl
to be dropped to 5. When pikachu comes around, it compares 5==25 -> bad;
pulling out the method and passing byval allows it to be 25 at the start
of every new encounterstatic checked.
2017-12-16 18:24:03 -08:00
Kurt
06ea6d94a2
Allow box layout / wallpaper editing for sav5
...
was temporarily disabled during sav5 implementation 2y ago, now noticed.
Closes #1702
2017-12-16 14:15:09 -08:00
Kurt
18796d6f92
Misc tweaks
...
fix bk4 ribbon checks (lacked interface inheritance)
change MN -> UM for get blank save (unused in PKHeX solution)
prevent inheriting from derived pkm classes
2017-12-16 14:11:41 -08:00
Kurt
0b58d4ffe9
Add form/nature checks for gen5 trades
...
altform wasn't checked for EncounterTrade
nature wasn't checked for gen5 origin (decoupled from PID, but forced)
#1702
2017-12-16 14:09:03 -08:00
Kurt
e5aa39a6bb
Refactoring
...
get language list now doesn't return new objects (or re-enumerate)
update rand usage to be inclusive for top bound, extend shuffle to
collections
remove unnecessary location overrides (already overriden in legal fetch)
2017-12-14 20:58:55 -08:00
wwwwwwzx
6c4a4ff4ec
Fix chinese language ID check
...
Some species have the same unicode name in CHS and in CHT, so it will lose language info after converting from a in-game string to textbox (The game will use different fonts to distinguish them, bad GF)
This change will give CHT encoding a higher priorty if the pkm is in CHT, although it's possible to get CHS encoding default species name with CHT language ID.
Also fixed previous editing error
2017-12-14 19:30:59 -08:00
Kurt
b5640de538
Misc tweaks
...
reorder some args, reuse some standard methods;
add spanish for gen1/2 egg name case
2017-12-14 16:16:47 -08:00