Commit graph

3548 commits

Author SHA1 Message Date
Kurt
3123f0df2f Drastically speed up rand() pairs -> seed search
Meet in the middle attack trades some RAM (2^16 flag/byte array) to
reduce future searches by a factor of 1:2^8

profiling yielded >100x speed improvements, even a 2x would have been
impressive ;)
knocks the biggest cpu hog (when searching db) out of the race!
2017-08-03 00:59:39 -07:00
Kurt
64919cb8c1 Fix argument order forms fetch
Closes #1378
2017-08-02 10:00:24 -07:00
Kurt
4945744599 Update Pokewalker PID checks
wildeep to the rescue 7y ago

http://www.smogon.com/forums/threads/past-gen-rng-research.61090/page-12#post-2661504

test cases need gender specified as gender is stored in a field (not
directly grabbed from PID)

addresses pokewalker pkms provided in #1377, RoC's PC has a bunch of
hacks ;)
2017-08-01 23:48:35 -07:00
Kurt
fe6aef3776 Flag relearn moves not possible on current game
Noticed the egg moves were concatted between games; can only have egg
moves from the origin game
Same for levelup moves in the relearn list; example being Plusle with
Charm (was added to egg moves / learnset in OR/AS for parity with minun

this is such a remote edge case, but may pop up in usum for a different
species ( ͡° ͜ʖ ͡°)
2017-08-01 17:55:23 -07:00
Kurt
2a4aa0b79d Refactoring fixes
Fix misc refactoring errors

Don't early abort gen4->5+ encounter generation (need to check ingame
trades for abra/gengar). Can avoid by PID dictionary to check for trades
first, but unimplemented.

Closes #1377 , not fixing Pokewalker PID mismatch as algorithm needs to
be ironed out separately.
2017-08-01 14:55:10 -07:00
Kurt
8e4d236c98 Merge branch 'master' of https://github.com/kwsch/PKHeX 2017-08-01 13:37:46 -07:00
Kurt
75ac795d92 Add missing cast for g7 string conversion
Closes #1374
2017-08-01 13:37:42 -07:00
Kurt
ddcabfe662 Merge pull request #1376 from sora10pls/master
Fix D/P static encounter fetch
2017-08-01 10:34:10 -07:00
sora10pls
31781dd7d7 Fix D/P static encounter fetch 2017-08-01 13:26:11 -04:00
Kurt
80196f75ef Refactoring
split Core.PKX into smaller classes, only StringConverter is exposed for
outside namespaces
2017-07-31 23:03:51 -07:00
Kurt
2344098745 Refactoring
Add more docs, clearer code
Fixes gen2 national park / route 14 swapped strings in EncounterVerifier
2017-07-31 17:09:16 -07:00
Kurt
c15cfdc52d Fix b2w2 reference
yay copypaste
Closes #1373
2017-07-30 15:13:45 -07:00
Kurt
d3a30ebf35 Refactoring +docs
Add some documentation for the high-level encounter finding
Fix encounterstatics not being filtered for the associated game version
(closes #1372)
was a side effect of refactoring this week
2017-07-30 12:31:17 -07:00
Kurt
1f7a098751 Merge pull request #1371 from wwwwwwzx/master
Update Chinese Translation
2017-07-29 21:30:50 -07:00
wwwwwwzx
5b05330ce8 Add XY Snorlax shiny lock and legends ability lock
From gen6 RNG
2017-07-29 20:54:44 -07:00
wwwwwwzx
5c34e37006 Update Chinese Translation
Replace with in-game texts, mainly ribbon names.
Update legality strings.
Fix Chinese hgss location text (Mt. Silver => Mt. Silver Cave)
2017-07-29 20:49:57 -07:00
Kurt
cb8777f767 Refactoring
now that the logic has become more stable, polish away some complexity
2017-07-29 11:54:52 -07:00
Kurt
defb05fed4 Add gen5 nidoran name handling
sanitizes to the gen5 case and back,  no half/fullwidth is considered
closes #1370
2017-07-28 18:04:27 -07:00
Kurt
f6df831d1a fix korean set nickname
closes #1369
2017-07-28 09:02:01 -07:00
Kurt
ac3d6a296a Add gen4 forme move handling
Shaymin case reported, deoxys defense at level 100 with zap cannon was
not recognized as legal.

Closes #1355 via provided fix
Closes #1367, did not address Deoxys case
2017-07-27 02:24:23 -07:00
Kurt
9b31202345 Restore bk4 properties
necessary for reflection property transferral (ie language)
indirectly fixes mixed-bit properties (ie altform/gender) as they are
reversed bits relative to pk4.
2017-07-26 18:26:54 -07:00
Kurt
711661c1ea Switch air cutter for roost (oras tutors)
crowdsourced error, confirmed with pk3DS
314 (air cutter) ->355 (roost)

pad with leading zeroes for cleanliness
closes #1364
2017-07-25 23:30:10 -07:00
Kurt
5f088813a5 Ignore secret sword mismatch in gen5
Closes #1361
2017-07-25 20:39:54 -07:00
Kurt
9b0603df96 Add emerald swarm special move detection
I don't think SlotType.Grass->Swarm changes anything, best to use it for
differentiating vs the default 1% slot.

Closes #1362
2017-07-25 17:35:07 -07:00
Kurt
68aa9aeec9 Relocate encounter data loading to separate files
shifts encounter data from Legal's split tables to individual files for
easier maintenance and initialization. Legal Core's init is so much
simpler now.

fix resource name typo
2017-07-25 00:28:43 -07:00
Kurt
2faf6ae8e5 Redo prior g5 roamer commit
switch to list to allow/add unknown value option
#1358
2017-07-23 22:44:00 -07:00
Kurt
866e8fd485 Split roamer flags into checkboxes
basically there was 0x81 which was not 0-3, and the other roamer had
0x40.

Closes #1358, thanks @Ninjistix !
2017-07-22 13:15:53 -07:00
Kurt
fb9dd6103d Unban daily ribbons for OR/AS
Ribbon Belle at Mauville Hills gives the daily ribbons
Closes #1343
2017-07-21 08:48:35 -07:00
Kurt
dea3fcfab6 Merge pull request #1354 from sora10pls/master
Unban Aggronite
2017-07-21 08:28:44 -07:00
architdate
9a9553f8c0 Fixed Zygarde Legalities from Gen 6 origin (#1353)
* Fixed Zygarde Legalities from Gen 6 origin

* Same functionality, Lesser Lines
2017-07-21 08:28:25 -07:00
sora10pls
ed7cb02dd1 Unban Aggronite 2017-07-21 01:49:56 -04:00
Kurt
30f7345218 Fix goodra gen6 evo check
Remove 31 from argevos, was wiping goodra's evo for whatever reason. No
idea why it isn't 4 sliggoo, but oh well, now works as intended.

Apply a little bit of performance increases for the loading of
evotables.
data length checks unnecessary as the the following iterator will throw
an exception
2017-07-20 19:34:41 -07:00
Kurt
3b8643bc77 Fix gen1 VC legality checking error
GetGenMovesCheckOrder doesn't respect generation restrictions, while
EncounterMoves does; filter afterwards.

Add compiler flags in the Analysis file to toggle try/catch off for
easier debugging. Just uncomment the #define SUPPRESS line.

Closes #1345
2017-07-18 16:21:31 -07:00
Kurt
2d18440445 Fix wurmple evo gen3/4
yeah it was never the lowest 16 bits as every-internet-source claims.

1D9C9130 silcoon => 3716[8] = cascoon (nope)
#1330 was correct!
2017-07-17 15:58:15 -07:00
Kurt
4207df8d74 Merge pull request #1341 from kamronbatman/fix_wc3_shiny
WC3 additions
2017-07-16 17:45:59 -07:00
Kamron Batman
3168a2ae40 Fixes shiny check and adds negai boshi. Adds force-shiny 5th anniv. 2017-07-16 16:07:28 -07:00
Kurt
249c08b062 Add gen-sensitive deoxys sprite fetching
Closes #1327
2017-07-16 14:05:29 -07:00
Kurt
2b0cfab31a Disallow shiny dream radar/forest shinies
Closes #1340
2017-07-16 10:15:12 -07:00
Kurt
85d4c0b4d7 Improve wc3->pk3 creation
Closes #1337
2017-07-15 23:35:32 -07:00
Kurt
c61c572f35 update channel generation
Thanks @admiral-fish !
2017-07-15 19:59:38 -07:00
Kurt
2a2f5669e4 Add wc3->pk3 conversion
fixes 10ANIV pikachu having Thunderbolt twice
un-duplicates CHANNEL event data
adds seed->PIDIV generator template for M1/2/4, CXD, Channel, and BACD

improve pkm converter to update nickname of hatched eggs. isn't perfect
(farfetch'd) but works better than before
2017-07-15 18:36:55 -07:00
Kurt
569873701b Fix antishiny 3-5=>6+ check
uint SID = Util.ToUInt32(TB_TID.Text);
uint TID = Util.ToUInt32(TB_TID.Text);
first line should have been TB_SID.Text not TID

pull out method

Thanks wejhvabewjty!

https://projectpokemon.org/forums/forums/topic/41110-problem-with-pok%C3%A9mon-caught-w-cute-charm-lead/
2017-07-15 09:48:08 -07:00
Kurt
2f3c56e7c5 Update gen4/5 mg generators
PGF for movie victini has OTgender=3; only eggs are supposed to set OT
details from the SAV.

update pattern matchers to abuse this fact.

Thanks @odaxis !
2017-07-14 22:50:12 -07:00
Kurt
dc0a43ae8f Handle link gifts without ribbons
Link gifts had the possibility of having all those ribbons (even
Event3), but none were used.
2017-07-14 20:42:51 -07:00
Kurt
dce42195e5 Add static encounter deferrals
Rarely ever used, the only case where an unfavorable match is returned
first is Emerald Lati@s transferred to a future generation, as there are
2 encounters (one with and one without Fateful).

Closes #1326
Thanks @sora10pls !
2017-07-13 23:12:30 -07:00
Kurt
ee57bc49f0 Add gen3 event flag/variable editing
Template files added for e/frlg, no guarantees.
http://i.imgur.com/ER5rRBn.png
(left+select+b when on groudon/kyogre menu screen)

Closes #1328, thanks @rboninsegna !

Added the ability to prefix flag numbers with 0x, and prefix variable
numbers with 0x40__; will be parsed as hex.
2017-07-13 23:05:59 -07:00
Kurt
88eed8dca7 Merge pull request #1332 from kamronbatman/gen3_event_fixes
Fixes & Adds Gen 3 Events
2017-07-13 22:16:03 -07:00
Kamron Batman
51ae267cc8 Adds aura mew. Rearranges wondercard events to the right block. Fixes mews. Adds Negaiboshi. 2017-07-13 21:42:55 -07:00
Kurt
f84cab6272 Block bred Ash Greninja
Closes #1329
2017-07-13 21:12:16 -07:00
Kurt
ee29b4a31f Reorder mysterygift 5+ egg generating logic
Closes #1331 where IsEgg was checked before it was set
handle legality cases (set nickname & flag)
2017-07-13 21:05:20 -07:00