Jump to content

Kaphotics

Helpful Member
  • Posts

    6893
  • Joined

  • Last visited

  • Days Won

    323

Posts posted by Kaphotics

  1. In the 5th gen, Pokemon hatched from eggs keep the trashbytes the had from the name "Egg" (or the equivalent in whatever language they're from), this is usually overwritten by the new name when the Pokemon hatches but it is possible to see with some spanish Pokemon as their eggs are named "Huevo".

    http://www.pokecheck.org/?p=detail&uid=1962525 This has pefectly normal Trash Bytes (second xFFFF is the terminator sequence from the name Huevo).

    http://www.pokecheck.org/?p=detail&uid=466144 This is a hack as it is missing the terminator sequence from the name Huevo.

    It's legal

    Just because it has an origin language of Spanish doesn't mean that the egg originated from a Spanish game. Upon hatching the origin language hex will change.

    ---derp

  2. RAM Editing and AR code development:

    The relevant data can be edited in real time in game @ ~0x2229CB0 in US games. Go ahead and change certain values and see how the game reacts!

    Here's a template for a code (containing a pointer) that will do a targeted overwrite.

    94000130 FFFB0000
    B2000024 00000000
    X0024FCC YYYYYYYY
    D2000000 00000000

    The pointer points to the start of the first occupant, which is 0x246AC in the save file. So say you want to edit Helper 1's sprite.

    New Pointer = 0x920 + 0x24CCC + 0x2A

    (default pointer-start in sav + helper1offset + spriteoffset)

    Pointer: 0x25616

    X of pointer becomes 2, to write only 1 byte

    YYYYYYYY becomes 0000005A, to set spriteID to 5A - Skyla

    Code becomes:

    94000130 FFFB0000
    B2000024 00000000
    20025616 0000005A
    D2000000 00000000

    Activate in game and Skyla will be your first assistant. Note however you have to change her name and responses too, use the same method though :)

    skyla%20helper.png

    Bonus:

    (Select) Avenue Shops are always in stock!

    94000130 FFFB0000
    B2000024 00000000
    0002507C 00000000
    00025140 00000000
    00025204 00000000
    000252C8 00000000
    0002538C 00000000
    00025450 00000000
    00025514 00000000
    000255D8 00000000
    D2000000 00000000

    Activate once you start talking to the shopkeeper. Once you buy an item, you can activate again! Even though it says it's not in stock, you can still purchase.

    rebuy.png

  3. Sub-structures of Join Avenue:

    Visitor Structure

    Pretty much the same structure as occupants, maybe a few different offsets but I haven't bothered with these.

    Here's some extracted visitors:
    DANIEL
    MIKE
    DAVE
    Robbie
    (.pjv, poke joinavenue visitor)

    NPC Fan Structure

    0x00 - Fan Name (0xE, 7 + terminator)

    0x0E/F - I think they are unused, this is usually origin location

    0x10 - NPC Greeting

    work in progress

    0x22 - Gender (0x10 female, 0x00 male)

    0x2C - NPC Text 1

    0x3C - NPC Text 2

    0x4F - Has been spoken to flag (1=spoken to)

    0x55 - Has to deal with text bubble popups, which NPC it attaches to.

    0x5C - Has to do with souvenirs given, can't yet discern how it does it.

    Occupant Structure

    0x00 - Occupant Name (0xE, 7 + terminator)

    0x0E - Country

    0x0F - SubLocation

    0x10 - Occupant Shout (0x10, 8 characters)

    occupant flags

    0x22 - Gender (0x10 female, 0x00 male)

    0x24 - Trainer ID

    0x28 - Played Time

    0x2A - Occupant Sprite (overworld) In general,
    via this sheet
    order.

    occupant stats

    0x2C - Restriction for Recruitment (based on level)

    0x2E - Shop Choices (8 bits, not sure how it picks)

    0x34 - Pokemon in Pokedex, uses lowest 2 bits from 0x35 as the uppermost bits for this number.

    0x35 - Favorite Pokemon (0x2, Note: lowest 2 bits are used by 0x34. Chatot 0x1B9 = 0x6E4 (with pokedex=18d)

    0x39 - Medals

    0x3A - Adventure Start

    0x3C - Hall of Fame Entry

    0x40 - Link Trades (signed 0x4)

    0x44 - Nicknames Given (signed 0x4)

    0x48 - Customers (signed 0x4)

    0x4C - Money Spent (signed 0x4)

    0x50 - Passerby Met (signed 0x4)

    0x54 - Link Battles (signed 0x4)

    0x58 - Pokemon Caught (signed 0x4)

    0x5C - Eggs Hatched (signed 0x4)

    0x60 - Occupant Trivia Responses (see trivia structure)

    0x70 - Occupant Activities (recent happenings)

    0x7C - 00000000

    0x80 - Greeting (0x10, 8 characters)

    0x90 - Farewell (0x10, 8 characters)

    0xA0 - IsPlayer Flag (00 - NPC, 01 - Met Human player)

    0xA3 - Year Met

    0xA4 - Month Met

    0xA5 - Day Met

    0xAB - Player's Join Avenue Rank (not in yours)

    0xAD - Current Shop Rank (00-FF)

    0xAE - Current Shop EXP (0000-FFFF)

    0xB0 - Inventory Availability (determined and set by game) - Bitflags, 0 = available, 1 = unavailable

    0xB4 - Shop Type, appearance, and NPC position

    - I really have no idea how this works, it determines what model to use too

    Helper Structure

    0x00 - Helper Name (0xE)

    0xE - Country

    0xF - Location

    0x10 - First Meet Line (0x10)

    0x20 - Flags

    0x2A - Helper Overworld Sprite. In general,
    via this sheet
    order.

    0x2C - Has to do with positioning inside building

    0x30 - Met Year

    0x31 - Met Month

    0x32 - Met Day

    0x33 - Unused? 00

    0x34 - Greeting Line 1 (0x10, 8 characters)

    0x44 - Greeting Line 2 (0x10, 8 characters)

    0x54 - 00000000

    Trivia Structure

    0x24E8C - "Person you like" Response

    00 - No Response
    01 - Yes
    02 - No
    03 - Many
    04 - Not interested

    0x024E8D - "When you like somebody" Response

    00 - No Response
    01 - Tell the person about it
    02 - Wait for the other person to say it first

    0x024E8E - "Charming feature" Response

    00 - No Response
    01 - Coolness
    02 - Beauty
    03 - Cuteness
    04 - Cleverness
    05 - Toughness

    0x24E8F - "Personality" Response

    00 - No Response
    01 - Meticulous
    02 - Sloppy

    0x24E90 - "Siblings" Response

    00 - No Response
    01 - Oldest
    02 - Middle
    03 - Youngest
    04 - Only child

    0x24E91 - "Friend types" Response

    00 - No Response
    01 - Boys
    02 - Girls
    03 - Men
    04 - Women
    05 - Middle-aged men
    06 - Middle-aged women
    07 - Elderly men
    08 - Elderly women

    0x24E92 - "Your room" Response

    00 - No Response
    01 - Neat
    02 - Messy

    0x24E93 - "Dreams" Response

    00 - No Response
    01 - Make it come true
    02 - Give it up

    0x24E94 - "Rules" Response

    00 - No Response
    01 - Follow them
    02 - Create new ones
    03 - Break them

    0x24E95 - "Talents and efforts" Response

    00 - No Response
    01 - Effort
    02 - Talent

    0x24E96 - "Hottest" Response

    00 - No Response
    01 - Pokestar Studios
    02 - Funfest Mission
    03 - The PWT
    04 - Join Avenue
    05 - Black City
    06 - White Forest
    07 - Medal Rally
    08 - Xtransceiver
    09 - Hidden Grottoes

    0x24E97 - "Regions" Response

    00 - No Response
    01 - Kanto
    02 - Johto
    03 - Hoenn
    04 - Sinnoh
    05 - Unova

    0x24E98 - "Bad thing" Response

    00 - No Response
    01 - Forget it and move on
    02 - Dwell on it

    0x24E99 - "Behavior" Response

    00 - No Response
    01 - Impatient
    02 - Laid-back

    0x24E9A - "Conversation" Response

    00 - No Response
    01 - Talk
    02 - Listen

    0x24E9B - "Secret" Response

    00 - No Response
    01 - Keep it to myself
    02 - Tell someone about it

    Activities Structure

    0x00 - Activity 1 Type

    0x01 - Activity 2 Type

    0x02 - Activity 3 Type

    0x03 - Activity 4 Type

    0x04/5 - Activity 1 Date

    0x06/7 - Activity 2 Date

    0x08/9 - Activity 3 Date

    0x0A/B - Activity 4 Date

    Date: Not sure, it looks to be proportional to days + a bunch depending on the number.

    194E = 10/14/12

    18F5 = 7/21/12 (194E-18F5 = 89, difference between dates is 85. 4 discrepancy)

    18F4 = 7/20/12

    18E3 = 7/3/12

    Activities:

    00 - No Activity (none)
    01 - I defeated the Champion and entered the Hall of Fame on %DATE!
    02 - I battled in the Battle Subway on %DATE!
    03 - I shot a movie in Pokestar Studios on %DATE!
    04 - I took a Battle Test at the Battle Institute on %DATE!
    05 - I participated in the Pokemon Musical on %DATE!
    06 - I entered someone's world in the Entralink on %DATE!
    07 - I tried a Funfest mission on %DATE!
    08 - I hatched a Pokemon Egg on %DATE!
    09 - I raised a Pokemon's level on %DATE!
    0A - I was watching TV on %DATE!
    0B - I checked inside a trash can on %DATE!
    0C - I gave one of my Pokemon a nickname on %DATE!
    0D - I caught a Pokemon with a Super Rod on %DATE!
    0E - I was looking for hidden items on %DATE!
    0F - I had a Pokemon Fossil restored on %DATE!
    10 - I was communicating in the Union Room on %DATE!
    11 - I was trading Pokemon through the GTS on %DATE!
    12 - I was trading Pokemon through GTS Negotiations on %DATE!
    13 - I was watching somebody's Battle Video on %DATE!
    14 - I was battling via Random Matchup on %DATE!
    15 - I took a Ferris-wheel ride on %DATE!
    16 - I was challenging the Black Tower on %DATE!
    17 - I was challenging the Pokemon World Tournament on %DATE!
    18 - I was raising the popularity of Join Avenue on %DATE!
    19 - I was playing a game on the Xtransceiver on %DATE!
    1A - I was communicating in the Wi-Fi Club on %DATE!
    1B - I was looking for Hidden Grottoes on %DATE!
    1C - I connected to the Pokemon Dream World using Game Sync on %DATE!
    1D - I received a Mystery Gift from a deliveryman on %DATE!
    1E - I was communicating via Infrared Connection on %DATE!
    1F - I caught a wild Pokemon on %DATE!
    20 - I was challenging the White Treehollow on %DATE!

    Trivia, Activities, (unlikely for Stats) are most likely transferred with Metadata so that when met on GTS / etc they are able to do every interaction. Further research in that area is needed, if cared.

    Location Metadata for Countries and Sub-locations

  4. Join Avenue is pretty customizeable in game, but there's many aspects you can't really change. This thread is aimed to edit the Join Avenue via save editing or RAM editing (AR Codes).

    ja%20sprites.pngflag.png

    level%20100.pngavenue%20sprites.png

    Main Structure:

    0x23C00 - 0x0000000000000008

    Visitors - 0xC4 long

    0x23C08 - Visitor 1

    0x23CCC - Visitor 2

    0x23D90 - Visitor 3

    0x23E54 - Visitor 4

    0x23F18 - Visitor 5

    0x23FDC - Visitor 6

    0x240A0 - Visitor 7

    0x24164 - Visitor 8

    0x24228 - 0x0000000C

    NPC Fans - 0x60 long

    0x2422C - Fan 1

    0x2428C - Fan 2

    0x242EC - Fan 3

    0x2434C - Fan 4

    0x243AC - Fan 5

    2440C - Fan 6

    2446C - Fan 7

    244CC - Fan 8

    2452C - Fan 9

    2458C - Fan 10

    245EC - Fan 11

    2464C - Fan 12

    Occupants - 0xC4 long

    0x246AC - Occupant 1

    0x24770 - Occupant 2

    0x24834 - Occupant 3

    0x248F8 - Occupant 4

    0x249BC - Occupant 5

    0x24A80 - Occupant 6

    0x24B44 - Occupant 7

    0x24C08 - Occupant 8

    Helpers - 0x58 long

    0x24CCC - Helper 1 (Registration)

    0x24D24 - Helper 2 (Shops)

    0x24D7C - Helper 3 (Organization)

    0x24DD4 - Helper 4 (Healer)

    Avenue Settings

    0x24E8C-0x24E9B - Player Trivia (set by avenue NPCs, see next post)

    0x24E9C-0x24EA7 - Player Activities (recent happenings to player ^)

    0x24EA8-0x24EAB - 00000000 (nothing, unused)

    0x24EAC - Your Favorite Phrase (0x10)

    0x24EBC - Your Impressed Phrase (0x10)

    0x24EF4 - Join Avenue's Name (11 characters + terminator, 0x18)

    0x24F1E - Your Title (0x10)

    bunch of FF's

    0x24FCC - Avenue Rank (0-9999, dec 2 bytes)

    0x24FCE - Avenue Ceiling Color

    00 Orange

    01 Purple

    02 Blue

    03 Green

    0x252A8 - Save count (0x2)

    0x252AA - Checksum of Join Avenue Region [0x23C00-0x252A7]

    0x25F86/7 - Copy of Checksum of JA Region

    0x25FA2/3 - Checksum of Checksum Region 0x25F00/93

    I've successfully re-inserted a visitor after all the visitors had been removed from the save file! Just had to correct the checksums and it worked easily.

    reinsert.png

  5. When I opened a programm or a .txt file of PokeStock there a only some curious letters (like this: Eƒtƒ@ƒCƒ‹‚ðŠJ) inside instead of japanese ones.

    Is there any way how I can fix that?

    Or is it possible to translate those letters into Japanese or even English?

    Thanks in advance. :)

    use the localized files that are provided in the thread

  6. I notice there are reveal codes for BW1

    B2W2 have different offsets and the B1W1 code just read from a given memory location. If you wanted it for the new games, just replace the offsets with the new ones. Nobody has converted it because it was a testing code.

    Remember, ARs can give different parameters.

  7. Is it possible to get both on the same game?

    no.

    When you fuse, it stores the Zek/Resh in the save file. When you unfuse, that stored Zek/Resh is re-added to the party. It only stores one, hence only one Kyurem can be fused at a time. If you attempt to unfuse a Kyurem when a Zek/Resh is not stored, you get a bad egg. In general, only have one fusion on your game at a time.

  8. EXCELLENT ! Thanks for the info *-*

    Now there are a few hex that i dont understand, following your table it starts in the order of the game from floccesy ranch and onwards, im editing the file 3_000 on CrystalTile2 (from narc a/2/7/3 hidden grottos) it starts normally with CE00 (dunsparce) and also contains Marril (B700) and herdier (FB01) which are correct... but what im confused about is the 0A & 1E, are these fillers?

    Also is there any hex editor that can show me the tables in the same order as the ones you posted? because in CT2 they are in order but they dont show all the values on the same line like your tables.

    Here´s a Screenie just in case.

    [ATTACH]10220[/ATTACH]

    pretty sure those are levels (it's been awhile)

    there's ground items and dowsing items

  9. Thanks for this, great to be able to play a harder version on my first playthrough.

    Just registered to mention that the "Habitat" button in the Pokedex doesn't work, it gives me a black screen and I have to hard reset. I tried to access it after getting the starter pokemon, so I'm not sure if it works elsewhere in the game. It might be an easy fix, might not, but I didn't see it in the known bugs list so I thought I would mention it.

    If it's an easy fix, it could be really useful given the new/altered pokemon locations compared to the original.

    Habitats do not get changed by simply changing the encounter table, they are in another file that has yet to be deciphered. It's probably crashing because the data is mismatching between habitat and encounter table. It won't be a simple fix, and won't be fixed (at all).

    Just use the uploaded location listings provided by Drayano.

  10. first trainer settings, offsets after the pkm data; trainer data starts at 0x0000

    0x138-0x157 - Trainer Name (0x20 bytes)
    0x158-0x183 - Trainer Class (0x2C bytes)
    0x184-0x217 - Trainer Intro (0x94 bytes)		~ close each entry with 00 F0 01 BE 00 00 then pad with FF
    0x218-0x2AB - Trainer OnDefeat (0x94 bytes)		~ ^.. might be "wait for A button press to continue"
    0x2AC-0x33F - Trainer OnVictory (0x94 bytes)		~ ^
    0x340-0x3D3 - Trainer Extra? (0x94 bytes)		~ ^
    0x3D4-0x3DF - Flag Settings

    note: 0xFFFE (FE FF) stands for line break

    You can do editing of the tournament in the RAM if you choose so. Upon accessing the PWT Tournament menu, t_download_save.c brings up the tournament; the data for the tournament begins at (english offsets)

    Bot Tournament: 0x02293BE8 w2 / 0x02293BC8 b2

    Mid Tournament: 0x02294E28 w2 / 0x02294E08 b2

    Top Tournament: 0x02296068 w2 / 0x02296048 b2

    0x1240 gap between tournaments positions, because there's stuff right before the data itself (t_download_save.c)

    That way you can make changes on the fly instead of editing the save file each time you want to tinker with an unknown byte. With that said, there has to be a setting to choose what sprites to use (would special music be set too for the Region Leaders?), and if trainers tend to use certain combinations for their team. There's 4 slots for trainers and data, there has to be a flag that signifies either a trainer or PKM isn't used. Also, the whole "rigging" of the tournament for opponents.

  11. 2012にほんだいひょうにちょうせん - 2012 Japanese Video Games Championship (parse output)

    チャンピオン ワタルにちょうせん! - Challenge the Champion, Lance! (parse output)

    しゅうけつ!ジムリーダー! - Gathered! Gym Leader!

    でんせつの ローテーションバトル! - The Legendary Rotation Battle!

    I don't have "The Battle of Legendary Pokémon!" which started Sep 14th.

    • Like 1
×
×
  • Create New...