From c81bba25f447973bef70f95ae89ac0f601bc0549 Mon Sep 17 00:00:00 2001 From: TheGag96 Date: Tue, 23 Nov 2021 16:58:43 -0600 Subject: [PATCH] Add support for the Following Platinum mod --- Hijack_WalkingPokemon.s | 56 +++++++++++++++++++ Hijack_WalkingPokemonDetect.s | 16 ++++++ Hijack_WalkingPokemonDetect2.s | 16 ++++++ README.md | 31 +++++++---- ShinyChanges/FollowPals/1014_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/1015_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/496_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/497_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/498_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/503_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/524.btx | Bin 0 -> 4544 bytes ShinyChanges/FollowPals/525_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/535_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/536.btx | Bin 0 -> 4544 bytes ShinyChanges/FollowPals/558_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/559.btx | Bin 0 -> 4544 bytes ShinyChanges/FollowPals/565_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/566_normal.txt | 16 ++++++ ShinyChanges/FollowPals/566_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/595_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/597_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/615_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/616_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/617_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/645_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/646_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/665_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/666_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/723_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/730_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/735_normal.txt | 16 ++++++ ShinyChanges/FollowPals/735_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/742_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/743_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/744_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/746.btx | Bin 0 -> 4544 bytes ShinyChanges/FollowPals/760_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/798_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/799_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/815_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/882_normal.txt | 16 ++++++ ShinyChanges/FollowPals/900_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/901_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/902_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/954_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/959_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/960_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/961_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/962_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/963_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/977_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/978_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/979_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/985_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/989_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/996_shiny.txt | 16 ++++++ ShinyChanges/FollowPals/997_shiny.txt | 16 ++++++ build.sh | 72 ++++++++++++++++--------- pack_follow_pal.sh | 35 ++++++++++++ unpack_follow_pal.sh | 22 ++++++++ 60 files changed, 997 insertions(+), 35 deletions(-) create mode 100644 Hijack_WalkingPokemon.s create mode 100644 Hijack_WalkingPokemonDetect.s create mode 100644 Hijack_WalkingPokemonDetect2.s create mode 100644 ShinyChanges/FollowPals/1014_shiny.txt create mode 100644 ShinyChanges/FollowPals/1015_shiny.txt create mode 100644 ShinyChanges/FollowPals/496_shiny.txt create mode 100644 ShinyChanges/FollowPals/497_shiny.txt create mode 100644 ShinyChanges/FollowPals/498_shiny.txt create mode 100644 ShinyChanges/FollowPals/503_shiny.txt create mode 100644 ShinyChanges/FollowPals/524.btx create mode 100644 ShinyChanges/FollowPals/525_shiny.txt create mode 100644 ShinyChanges/FollowPals/535_shiny.txt create mode 100644 ShinyChanges/FollowPals/536.btx create mode 100644 ShinyChanges/FollowPals/558_shiny.txt create mode 100644 ShinyChanges/FollowPals/559.btx create mode 100644 ShinyChanges/FollowPals/565_shiny.txt create mode 100644 ShinyChanges/FollowPals/566_normal.txt create mode 100644 ShinyChanges/FollowPals/566_shiny.txt create mode 100644 ShinyChanges/FollowPals/595_shiny.txt create mode 100644 ShinyChanges/FollowPals/597_shiny.txt create mode 100644 ShinyChanges/FollowPals/615_shiny.txt create mode 100644 ShinyChanges/FollowPals/616_shiny.txt create mode 100644 ShinyChanges/FollowPals/617_shiny.txt create mode 100644 ShinyChanges/FollowPals/645_shiny.txt create mode 100644 ShinyChanges/FollowPals/646_shiny.txt create mode 100644 ShinyChanges/FollowPals/665_shiny.txt create mode 100644 ShinyChanges/FollowPals/666_shiny.txt create mode 100644 ShinyChanges/FollowPals/723_shiny.txt create mode 100644 ShinyChanges/FollowPals/730_shiny.txt create mode 100644 ShinyChanges/FollowPals/735_normal.txt create mode 100644 ShinyChanges/FollowPals/735_shiny.txt create mode 100644 ShinyChanges/FollowPals/742_shiny.txt create mode 100644 ShinyChanges/FollowPals/743_shiny.txt create mode 100644 ShinyChanges/FollowPals/744_shiny.txt create mode 100644 ShinyChanges/FollowPals/746.btx create mode 100644 ShinyChanges/FollowPals/760_shiny.txt create mode 100644 ShinyChanges/FollowPals/798_shiny.txt create mode 100644 ShinyChanges/FollowPals/799_shiny.txt create mode 100644 ShinyChanges/FollowPals/815_shiny.txt create mode 100644 ShinyChanges/FollowPals/882_normal.txt create mode 100644 ShinyChanges/FollowPals/900_shiny.txt create mode 100644 ShinyChanges/FollowPals/901_shiny.txt create mode 100644 ShinyChanges/FollowPals/902_shiny.txt create mode 100644 ShinyChanges/FollowPals/954_shiny.txt create mode 100644 ShinyChanges/FollowPals/959_shiny.txt create mode 100644 ShinyChanges/FollowPals/960_shiny.txt create mode 100644 ShinyChanges/FollowPals/961_shiny.txt create mode 100644 ShinyChanges/FollowPals/962_shiny.txt create mode 100644 ShinyChanges/FollowPals/963_shiny.txt create mode 100644 ShinyChanges/FollowPals/977_shiny.txt create mode 100644 ShinyChanges/FollowPals/978_shiny.txt create mode 100644 ShinyChanges/FollowPals/979_shiny.txt create mode 100644 ShinyChanges/FollowPals/985_shiny.txt create mode 100644 ShinyChanges/FollowPals/989_shiny.txt create mode 100644 ShinyChanges/FollowPals/996_shiny.txt create mode 100644 ShinyChanges/FollowPals/997_shiny.txt create mode 100755 pack_follow_pal.sh create mode 100755 unpack_follow_pal.sh diff --git a/Hijack_WalkingPokemon.s b/Hijack_WalkingPokemon.s new file mode 100644 index 0000000..124f893 --- /dev/null +++ b/Hijack_WalkingPokemon.s @@ -0,0 +1,56 @@ +.thumb + +Hijack_WalkingPokemon: @ hook at overlay 5, 0x1D21E (0x021EDF9E) and 0x1D2DC (0x021EE05C) + push {r4, lr} + + @ r1 contains the subfile ID inside the narc file root/data/mmodel/mmodel.narc containing all the OW sprites + mov r4, r1 + + ldr r3, =0x021EDCF5 + blx r3 + + push {r0, r1, r2} + + @ r0 now contains pointer to the BTX file that was just loaded + + @ skip this code if we did not just load a Pokemon OW sprite + @ these bounds are the IDs of Pokemon OW sprites specifically + ldr r1, =471 + cmp r4, r1 + blt .end + ldr r1, =1324 + cmp r4, r1 + bgt .end + + ldr r3, =0x020501E0 @ location of "free ram" area + + @ do not continue if 0xF0110 was not set earlier + ldr r2, [r3, #0x18] + ldr r1, =0x000F0110 + cmp r2, r1 + bne .end + + @ reset flag used to look for 0xF0110 + mov r1, #0 + str r1, [r3, #0x18] + + ldr r2, =0x1180 @ offset of normal palette in BTX file + add r0, r0, r2 + + ldr r1, [r3, #0x0] @ contains personality value of last read pkmn data + + ldr r2, =0x020500BD @ location of code from hueshift.c + + push {r0, r1, r2, r3} + blx r2 + pop {r0, r1, r2, r3} + + add r0, r0, #0x20 @ run code on shiny palette also since Pokemon may be shiny + blx r2 + + .end: + + @ restore old code + pop {r0, r1, r2} + + pop {r4, pc} diff --git a/Hijack_WalkingPokemonDetect.s b/Hijack_WalkingPokemonDetect.s new file mode 100644 index 0000000..89c9adc --- /dev/null +++ b/Hijack_WalkingPokemonDetect.s @@ -0,0 +1,16 @@ +.thumb + +Hijack_WalkingPokemonDetect: @ hook at overlay 5, 0xAFE (0x021D187E) + push {lr} + push {r0, r1} + + ldr r0, =0x000F0110 + ldr r1, =0x020501E0 @ location of in battle flag + str r0, [r1, #0x18] + + @ restore old code + pop {r0, r1} + mov r1, #0x22 + mov r2, #0x4 + + pop {pc} diff --git a/Hijack_WalkingPokemonDetect2.s b/Hijack_WalkingPokemonDetect2.s new file mode 100644 index 0000000..c05864a --- /dev/null +++ b/Hijack_WalkingPokemonDetect2.s @@ -0,0 +1,16 @@ +.thumb + +Hijack_WalkingPokemonDetect2: @ hook at Following Platinum sythetic overlay, 0x50 (0x023C8050), 0x1050 (0x023C9050), and 0x23A6 (0x023CA3A6) + push {lr} + push {r0, r1} + + ldr r1, =0x020501E0 @ location of in battle flag + ldr r0, [r0, #0x0] + str r0, [r1, #0x0] + + @ restore old code + pop {r0, r1} + mov r1, #5 + mov r2, #0 + + pop {pc} diff --git a/README.md b/README.md index 939e720..9c2fcac 100644 --- a/README.md +++ b/README.md @@ -144,14 +144,20 @@ List of changed Pokémon (so far): 1. Install [devkitARM](https://devkitpro.org/wiki/Getting_Started). 2. Install a [D compiler](https://dlang.org/download.html). -3. Use a program like Nitro Explorer 3 to extract `arm9.bin`, `overlay9-12.bin`, `overlay9-16.bin`, `overlay9-86.bin`, and `overlay9-87.bin` from your Platinum ROM. -4. Place them in the root folder of this repo, and name them to `arm9_vanilla.bin`, `overlay12_vanilla.bin`, `overlay16_vanilla.bin`, `overlay86_vanilla.bin`, and `overlay87_vanilla.bin`, respectively. -5. Run `./build.sh`. -6. Inject `arm9_patched.bin`, `overlay12_patched.bin`, `overlay86_patched.bin`, and `overlay87_patched.bin` back into `arm9.bin`, `overlay9-12.bin`, `overlay9-16.bin`, `overlay9-86.bin`, and `overlay9-87.bin`, respectively. -7. Extract `poketool/pokegra/pl_pokegra.narc`. -8. For each image in the `ShinyChanges` folder, insert that image to the proper place using "Pokemon Ds/Pic Platinum". (Note that some Pokémon might have changes to the base sprite.) -9. Reinsert `pl_pokegra.narc`. -10. If you want to be really thorough, extract `poketool/pokegra/pokegra.narc` and replace each changed palette entry (only the palette ones, not the image ones, unless necessary like Blissey!). +3. Download [PokEditor v1](https://github.com/turtleisaac/PokEditor/releases), extract it into the root folder of this repo, and rename folder that got extracted to `PokEditor`. +4. Use a program like Nitro Explorer 3 to extract `arm9.bin`, `overlay9-5.bin`, `overlay9-12.bin`, `overlay9-16.bin`, `overlay9-86.bin`, and `overlay9-87.bin`, and `data/weather_sys.narc` from your Platinum ROM. +5. Place them in the root folder of this repo, and name them to `arm9_vanilla.bin`, `overlay5_vanilla.bin`, `overlay12_vanilla.bin`, `overlay16_vanilla.bin`, `overlay86_vanilla.bin`, `overlay87_vanilla.bin`, and `weather_sys.narc`, respectively. +6. Use Tinke or PokEditor v2 (not v1) to extract file 65 from `weather_sys.narc` as `weather_sys_065_vanilla.bin`. +7. Run `./build.sh`. +8. Overwrite file 65 from `weather_sys.narc` with `weather_sys_065_patched.bin`. +9. Inject `arm9_patched.bin`, `overlay5_patched.bin` `overlay12_patched.bin`, `overlay86_patched.bin`, `overlay87_patched.bin`, and `weather_sys.narc` back into `arm9.bin`, `overlay9-5.bin`, `overlay9-12.bin`, `overlay9-16.bin`, `overlay9-86.bin`, `overlay9-87.bin`, and `data/weather_sys.narc`, respectively. +10. Extract `poketool/pokegra/pl_pokegra.narc`. +11. For each image in the `ShinyChanges` folder, insert that image to the proper place using "Pokemon Ds/Pic Platinum". (Note that some Pokémon might have changes to the base sprite.) +12. Reinsert `pl_pokegra.narc`. +13. If you want to be really thorough, extract `poketool/pokegra/pokegra.narc` and replace each changed palette entry (only the palette ones, not the image ones, unless necessary like Blissey!). +14. Extract `data/mmodel/mmodel.narc` as `ow_sprites.narc`. +15. Run `./pack_follow_pal.sh`. +16. Insert the resulting `ow_sprites_patched.narc` to `data/mmodel/mmodel.narc`. ## How It Works @@ -162,13 +168,13 @@ The added code used to make this work are inserted in `arm9.bin` at `0x5003C` th | Address | Description | |--------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| `0x020501E0` | Personality value of player Pokémon 1 | +| `0x020501E0` | Personality value of player Pokémon 1 (and the OW following Pokémon) | | `0x020501E4` | Personality value of enemy Pokémon 1 | | `0x020501E8` | Personality value of player/partner Pokémon 2 | | `0x020501EC` | Personality value of enemy Pokémon 2 | | `0x020501F0` | Saved-off variable battle data pointer | | `0x020501F4` | Unused | -| `0x020501F8` | `0xBA771E` if currently in battle, something else otherwise. Set by `Hijack_BattleStart`, `Hijack_BattleEnd`, `Hijack_BattleEndCaught`. Read by `Hijack_HueShift.s` | +| `0x020501F8` | `0xBA771E` if currently in battle, something else otherwise. Set by `Hijack_BattleStart`, `Hijack_BattleEnd`, `Hijack_BattleEndCaught`. Read by `Hijack_HueShift.s`; `0xF0110` if a OW following sprite is going to be loaded. Set by `Hijack_WalkingPokemonDetect2.s`, read by `Hijack_WalkingPokemon.s`. | | `0x020501FC` | Read in `Hijack_GbaPal.s` to determine if up the call chain, it was signalled that a Pokémon's battle sprite palette is being loaded. `0xBEEFXXXX` where `XXXX` is the index of the sprite being loaded (0-3). Also set to `0xFA3E` when loading a sprite for the Hall of Fame, to be read in `Hijack_PaletteUpload.s`; `0x0E66` when loading the egg hatching animation graphics, to be read by `Hijack_AnimPal.s`. | | `0x02050200` | Contains the personality value of the Pokémon read by the last call to `GetPkmnData` or `GetBoxPkmnData`, read by `Hijack_HueShift.s` and `Hijack_MiscSprite.s`. | @@ -210,6 +216,11 @@ A rundown of the code files involved: * `Hijack_AnimPal.s` - Hijacks a common function related to loading palettes (unsure of its exact purpose), just before uploading to palette RAM occurs. Checks if `0x020501FC` was set to `0x0E66` earlier in the call chain - if so, loads the personality value at `0x02050200`, calls the code at `hueshift.c`, then resets `0x020501FC` to `0`. +* `Hijack_WalkingPokemonDetect.s` - Hijacks a function in overlay 5 called when the overworld sprites are about to load during an OW load (e.g. entering/exiting a door, closing a fullscreen menu). `0x000F0110` is set to `0x020501F8` to be used by `Hijack_WalkingPokemon.s` later. + +* `Hijack_WalkingPokemonDetect2.s` - Hijacks three places in Following Platinum's synthetic overlay (`data/weather_sys.narc`, file 65) where a Pokémon's species is about to be determined for loading its proper sprite. The personality value of the Pokémon being considered is saved to `0x020501E0` to be used by `Hijack_WalkingPokemon.s` later. (Unfortunately, by the time `Hijack_WalkingPokemon.s` is hit, the last-read Pokémon's personality value can't be used because of some other code that gets called between `Hijack_WalkingPokemonDetect.s` and it.) + +* `Hijack_WalkingPokemon.s` - Hijacks two places in overlay 5, right at the point the BTX file for an overworld sprite gets loaded from `data/mmodel/mmodel.narc`. The overwritten call to load the BTX is ran. Then, if the file ID being read from the narc is one of the following Pokémon sprites (471-1324), and `0x020501F8` was set to `0x000F0110` earlier, we call the code at `hueshift.c` using the personality value in `0x020501E0` on both the normal and shiny palettes in the BTX file. `0x020501F8` is set to `0`. ## Credits diff --git a/ShinyChanges/FollowPals/1014_shiny.txt b/ShinyChanges/FollowPals/1014_shiny.txt new file mode 100644 index 0000000..3a480e5 --- /dev/null +++ b/ShinyChanges/FollowPals/1014_shiny.txt @@ -0,0 +1,16 @@ +#98B878 +#000000 +#B0C8F8 +#28A0F8 +#4d51bd +#cf27cf +#45368f +#5b44cf +#7b69f0 +#9b98f5 +#A88818 +#F8D060 +#A8A0C8 +#000000 +#404040 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/1015_shiny.txt b/ShinyChanges/FollowPals/1015_shiny.txt new file mode 100644 index 0000000..f05ca78 --- /dev/null +++ b/ShinyChanges/FollowPals/1015_shiny.txt @@ -0,0 +1,16 @@ +#98B878 +#000000 +#000000 +#000000 +#000000 +#cf27cf +#573da6 +#5b44cf +#7b69f0 +#9b98f5 +#1fb5a4 +#53f5d4 +#A8A0C8 +#000000 +#404040 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/496_shiny.txt b/ShinyChanges/FollowPals/496_shiny.txt new file mode 100644 index 0000000..162ddc4 --- /dev/null +++ b/ShinyChanges/FollowPals/496_shiny.txt @@ -0,0 +1,16 @@ +#A0B080 +#d8a040 +#ad7918 +#F808F8 +#F808F8 +#F808F8 +#F808F8 +#F808F8 +#686050 +#a39b81 +#ded6bf +#303030 +#403830 +#000000 +#A8A0C8 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/497_shiny.txt b/ShinyChanges/FollowPals/497_shiny.txt new file mode 100644 index 0000000..162ddc4 --- /dev/null +++ b/ShinyChanges/FollowPals/497_shiny.txt @@ -0,0 +1,16 @@ +#A0B080 +#d8a040 +#ad7918 +#F808F8 +#F808F8 +#F808F8 +#F808F8 +#F808F8 +#686050 +#a39b81 +#ded6bf +#303030 +#403830 +#000000 +#A8A0C8 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/498_shiny.txt b/ShinyChanges/FollowPals/498_shiny.txt new file mode 100644 index 0000000..398fe6e --- /dev/null +++ b/ShinyChanges/FollowPals/498_shiny.txt @@ -0,0 +1,16 @@ +#A0B080 +#d08030 +#e09828 +#785850 +#806850 +#b09888 +#c8b8a8 +#e0c8c0 +#786848 +#d0a868 +#e8b068 +#303030 +#382820 +#000000 +#A8A0C8 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/503_shiny.txt b/ShinyChanges/FollowPals/503_shiny.txt new file mode 100644 index 0000000..09867e4 --- /dev/null +++ b/ShinyChanges/FollowPals/503_shiny.txt @@ -0,0 +1,16 @@ +#B08080 +#382840 +#805088 +#b068c0 +#d898e0 +#b0b888 +#686848 +#602818 +#F800F8 +#F800F8 +#b8b895 +#d8d8c8 +#C8C8C8 +#000000 +#606060 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/524.btx b/ShinyChanges/FollowPals/524.btx new file mode 100644 index 0000000000000000000000000000000000000000..0b57da0921ab5b3abdb003ba23628ab4a8e22993 GIT binary patch literal 4544 zcmeHK-)kI29RKd!B{?w4?CyazAZBMynqVulJJ%$&7P~(rQV@T%#X=EN%lTqKlZzIt znCOX|e}IrDA=pPjX&wYIkT)NSK4`#)iqG1I;)}29cXnrHXSX7@1&Na3lG)FFzw@2% z%;)o+*-K8J<$wI{z>W(*z<~|`oPP2w{}gfF8jt7QMMq&!80{C8Pa92#(4OP=uh51= zu!gwbXgV)K172=TjGZ4FZ!S4wjiuIj>wJ4+VyW34Z$pM7rw>nqvwlML>#E;TJvhp) z`gPUssD5?u#!COC*I#?J|7eK8z{b3WrGsscYFN~8uZEA*@El@joWS*V^7WpE`yZ_!lB-iKxvnQVXn8tli;KyJV_4;!?+SFgfUEzi-GZB`v zm?rV6#$?r{lzPijig^pWh-uH*lWrs^&CHB08;%(DwH<&DKV*_T-N^8$NJ}%sK|o!T z4uI%H)b{5wOU>*UglFNVH5~Y;ncDs!V7Q$efQmn#?}J3HlJQXg4`=fAcX$ zErLmW#f{%D7eO)?$f(31g6uz(J8-A`7ZD8qYKu$$3q2VAd7%f*Khb(n{0B-8 zn*WZ{gXZ7xc?!=n8kcbY&3_0mCTT z@yzgy0Ad<_GF9H_AU66m!kBQm@13f2jvd@WB!XFhJRI9CI3nfhJUFC zi+_BTbt?Re8L!H}AJ_Ot_rK*I;scvk^lc&2BclraQUG^K|88<)@|_gmI(@=Fci(5T zr|!Km`P=Nz2i~0hXy$>b?X}(HgNJ{(0Px&1UtYfY{LSNU9sPFt%(?LgABtWGeu}r( F{sdc*5EB3Z literal 0 HcmV?d00001 diff --git a/ShinyChanges/FollowPals/525_shiny.txt b/ShinyChanges/FollowPals/525_shiny.txt new file mode 100644 index 0000000..de3b8eb --- /dev/null +++ b/ShinyChanges/FollowPals/525_shiny.txt @@ -0,0 +1,16 @@ +#A0B080 +#30403b +#a0c0b8 +#31694d +#985018 +#409068 +#88d098 +#b8f0c0 +#660834 +#c24476 +#679e73 +#F800F8 +#F800F8 +#000000 +#404040 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/535_shiny.txt b/ShinyChanges/FollowPals/535_shiny.txt new file mode 100644 index 0000000..fc4ddb7 --- /dev/null +++ b/ShinyChanges/FollowPals/535_shiny.txt @@ -0,0 +1,16 @@ +#A0B080 +#604820 +#F808F8 +#F808F8 +#D8B870 +#F8E0A0 +#a66d93 +#cf9dbc +#F808F8 +#F808F8 +#F808F8 +#F808F8 +#F808F8 +#000000 +#585858 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/536.btx b/ShinyChanges/FollowPals/536.btx new file mode 100644 index 0000000000000000000000000000000000000000..06e1ae0c720af42490a5c8caed8e3b80c00a1489 GIT binary patch literal 4544 zcmds*?~5Bn7{{N@s`y`glkb^ zZC>7S_z$#D!2^-x^2Xq+))%4{PW=buDCf(jW@dL2gnA%&%|bH!-DhU! z$LIS@=FY2MTzvA_fISm{fB_Z&)ZeP{Nl%TrZAkzd}4-9@An>J7aojOuvd65@&I~RxsZN&h>pG zVI<*%AAux(qW=8R#C0&-;MuYNVmLw?8UUb_04T>b-j^axoUF-&@1)^H9Y+Yq))J@` zLR2H|1zO@uhnFX@zKk>pv<1p;z&y#Nhvf!Vza&zi^9Ch{b zd|GMJ=ck3p^`siHE7`iZl4H6<&(2?O-LNxUHK%DNJ8#<=B{5G1o|HX38hmUr&bv`O zsK~?VgzcW$8-^o42K@E_`8a~rTpO80e@Hffu;lgdF=-vd7r<4w{m*sl6 z{NUAJUtVs?v}!n;#lk0`N32)rtce?p-ye2n)um+hBIOSj(w{}7uRK$l9b1|IB zQS$%4)Y-O`D;JW{ULwt2VxKTYap)Tul?ki&33?F0i?X)^AGm} zAp9qvzitoa0Qtvw-`q)!rYgrMcJHT&3 z?8f!4XT+B=O_%Yw5TzRs@j*poF~`&^OQMMfgtT~0>)i`@f+!22DwJwc+8nDW?bd95 z?I4O1R$gdzJfSyyH22|t(Uq>=A#lg%>5dFL1S%|7YCmDGRCas)*a(3S(j%Mx#981N z@DB|&1*=TFn$<=JQkjHqzv&+5%n z@YC37$e&_4+Yfh3UvG@U z)5(5)N)NDC>t#IqLa1rFx5E-Nd;|K4>$($C{-6Ab2_yVVKJSRX&+|z9rLg1tk@pCH zVg~$Kh>#+GSKMlbe0#NgM)F3eDQ5!?VSOLDHqTS>-}fHkKMOX+&zXChk4lBP!rZ~7 wM<;)z-@Nhg#Dgmv#nb2CWdPrvKY8ZfX6D1&@BC3bxb#)UkCUYb8ym&H0Z!3g)&Kwi literal 0 HcmV?d00001 diff --git a/ShinyChanges/FollowPals/558_shiny.txt b/ShinyChanges/FollowPals/558_shiny.txt new file mode 100644 index 0000000..adccb08 --- /dev/null +++ b/ShinyChanges/FollowPals/558_shiny.txt @@ -0,0 +1,16 @@ +#B8C890 +#807058 +#66543f +#b09880 +#f0e0b8 +#502020 +#C04058 +#E08090 +#705820 +#E8C860 +#F8F0B8 +#D09808 +#000000 +#000000 +#606060 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/559.btx b/ShinyChanges/FollowPals/559.btx new file mode 100644 index 0000000000000000000000000000000000000000..0ab830741d90304f9ae90236dd4a2843209ff53b GIT binary patch literal 4544 zcmdUy!Hyd>7{{ILZZ-#mJVP2T96H}P0ihO6k_9eQY9{VVlnYH4sS<+DM!VraRp>%b z9CjaoN8l0Q5sLQ26Ckd<0w<2Z|Fb`PoT$ChuBF8J+nyQQzyJ4*Qy)F3{{5$;E;FUH z>ZpNI>gdjc>St(Ix*xgfQAe~Ajs8b6rjM>0=y$sRm+Gq<>KyvCyVLnXb=7KjfA4s& zx6^d?y3KBH_qe~m-|X~zePwaw^_$mK=i;{17gAqJtvb>#^@Y@zQh)#5)3eiu-+uG; z>3b90Or^To(mWvTpKj^dmOj|h?{Dc3pjG!a);nzL7WCmB(ZHN1JD6xLdkTrr2Xt=2W`Jd9S))7iZ3$L-&+Me=}h zYHX2Apq!h5X?1mNWOK`Oe7T=fy|BwLKo|Lh7M8@V*}NoME(|R)o}#vv*M zKQhUE^61RZG)zRBOP~?1$A@cxTGaOXmtldw@_q>XmG~j>#!2dVe!%O-^A|rv z{^Ez0zxF^A{tj^DFMd$MpMoERKLC3u6++$d7k{XNMr@bh7j?YlhsG>{pO1LHER4CA zNCm$R(-b@2!r#Oz!yT?-?QIa&S8{Mv=qKcZ82xHUv>?-Jl^xqU>BofEc0==tfERnE%Vru7 z{u1*b7Wn)BS&_e$Brm*P;D?ky{E+g8A5#AC!zTZn&C~LSADjUKe@%`z2n%mcGboXN z;j+Op@<+0Fei#N=?)X2dTi$56R{Q1pF&PYyoM+Jp14RG$G4anrxUH{$uYY^z@5dkC r`ss()zf|hk`CE4%XSZg5KIGmXC(q75{N!%&NBv9j>*teqpV$8%qQzTm literal 0 HcmV?d00001 diff --git a/ShinyChanges/FollowPals/565_shiny.txt b/ShinyChanges/FollowPals/565_shiny.txt new file mode 100644 index 0000000..7a56b30 --- /dev/null +++ b/ShinyChanges/FollowPals/565_shiny.txt @@ -0,0 +1,16 @@ +#B8C890 +#524b66 +#886888 +#b090c8 +#c8a8d8 +#F800F8 +#3840A0 +#3870D0 +#F800F8 +#F800F8 +#F800F8 +#B8B8B8 +#989898 +#000000 +#484848 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/566_normal.txt b/ShinyChanges/FollowPals/566_normal.txt new file mode 100644 index 0000000..9c958eb --- /dev/null +++ b/ShinyChanges/FollowPals/566_normal.txt @@ -0,0 +1,16 @@ +#A0B080 +#1a161f +#281838 +#483058 +#684868 +#F800F8 +#F800F8 +#e05060 +#f77982 +#F800F8 +#282828 +#B8B8B8 +#989898 +#000000 +#606060 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/566_shiny.txt b/ShinyChanges/FollowPals/566_shiny.txt new file mode 100644 index 0000000..4e2ffad --- /dev/null +++ b/ShinyChanges/FollowPals/566_shiny.txt @@ -0,0 +1,16 @@ +#B8C890 +#473847 +#9c7b9c +#c09bc7 +#d9c1e0 +#F800F8 +#F800F8 +#8080e8 +#79b2f7 +#F800F8 +#282828 +#e6e6e6 +#cfcfcf +#000000 +#cfcfcf +#E8E8F8 diff --git a/ShinyChanges/FollowPals/595_shiny.txt b/ShinyChanges/FollowPals/595_shiny.txt new file mode 100644 index 0000000..2d91e7d --- /dev/null +++ b/ShinyChanges/FollowPals/595_shiny.txt @@ -0,0 +1,16 @@ +#C0B0D8 +#5c1d15 +#883800 +#db7f5a +#B09828 +#F0D848 +#A86048 +#F0A890 +#000000 +#000000 +#000000 +#504010 +#B0B0C8 +#000000 +#808080 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/597_shiny.txt b/ShinyChanges/FollowPals/597_shiny.txt new file mode 100644 index 0000000..44f7ce4 --- /dev/null +++ b/ShinyChanges/FollowPals/597_shiny.txt @@ -0,0 +1,16 @@ +#A0B080 +#403820 +#1d4b54 +#2c93a3 +#50c8f0 +#000000 +#000000 +#000000 +#000000 +#000000 +#485050 +#707070 +#909090 +#000000 +#303030 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/615_shiny.txt b/ShinyChanges/FollowPals/615_shiny.txt new file mode 100644 index 0000000..3febdfd --- /dev/null +++ b/ShinyChanges/FollowPals/615_shiny.txt @@ -0,0 +1,16 @@ +#B8C890 +#57321d +#405050 +#73502c +#96693c +#a08048 +#F800F8 +#A88868 +#E0B078 +#F8D8A8 +#886848 +#C0C0C8 +#A0A0B8 +#000000 +#404040 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/616_shiny.txt b/ShinyChanges/FollowPals/616_shiny.txt new file mode 100644 index 0000000..a2bb72f --- /dev/null +++ b/ShinyChanges/FollowPals/616_shiny.txt @@ -0,0 +1,16 @@ +#A8C070 +#9471c7 +#aa97cc +#bdb3e5 +#d5d5f0 +#383828 +#908018 +#C8B848 +#8361b0 +#b39ae6 +#E8F8F8 +#A02030 +#B0B0D0 +#000000 +#483068 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/617_shiny.txt b/ShinyChanges/FollowPals/617_shiny.txt new file mode 100644 index 0000000..4f2fd99 --- /dev/null +++ b/ShinyChanges/FollowPals/617_shiny.txt @@ -0,0 +1,16 @@ +#B8C890 +#382818 +#584838 +#5c3c10 +#804d19 +#a87028 +#cf9346 +#585040 +#ab874f +#e6a53e +#000000 +#000000 +#B0B0D0 +#000000 +#292929 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/645_shiny.txt b/ShinyChanges/FollowPals/645_shiny.txt new file mode 100644 index 0000000..80f3a79 --- /dev/null +++ b/ShinyChanges/FollowPals/645_shiny.txt @@ -0,0 +1,16 @@ +#88B868 +#e0b858 +#c2904f +#404040 +#505050 +#F808F8 +#F808F8 +#F808F8 +#807870 +#a8a090 +#e8e0d8 +#303030 +#585048 +#000000 +#A8A0C8 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/646_shiny.txt b/ShinyChanges/FollowPals/646_shiny.txt new file mode 100644 index 0000000..80f3a79 --- /dev/null +++ b/ShinyChanges/FollowPals/646_shiny.txt @@ -0,0 +1,16 @@ +#88B868 +#e0b858 +#c2904f +#404040 +#505050 +#F808F8 +#F808F8 +#F808F8 +#807870 +#a8a090 +#e8e0d8 +#303030 +#585048 +#000000 +#A8A0C8 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/665_shiny.txt b/ShinyChanges/FollowPals/665_shiny.txt new file mode 100644 index 0000000..9b9cf05 --- /dev/null +++ b/ShinyChanges/FollowPals/665_shiny.txt @@ -0,0 +1,16 @@ +#88C8E0 +#F800F8 +#F800F8 +#203038 +#486070 +#302848 +#523d7a +#8050b0 +#b858e0 +#da78f0 +#105810 +#309848 +#28c850 +#000000 +#B8C8E0 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/666_shiny.txt b/ShinyChanges/FollowPals/666_shiny.txt new file mode 100644 index 0000000..4ce631d --- /dev/null +++ b/ShinyChanges/FollowPals/666_shiny.txt @@ -0,0 +1,16 @@ +#88C0F0 +#203038 +#486070 +#581080 +#c247de +#9e45a8 +#e351f0 +#de68c6 +#f097e4 +#104f18 +#2a8545 +#46b05a +#63cf7c +#000000 +#B8C8E0 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/723_shiny.txt b/ShinyChanges/FollowPals/723_shiny.txt new file mode 100644 index 0000000..bc42454 --- /dev/null +++ b/ShinyChanges/FollowPals/723_shiny.txt @@ -0,0 +1,16 @@ +#90F0B8 +#F800F8 +#480000 +#781810 +#B03830 +#504020 +#E07818 +#F8D058 +#404040 +#585858 +#888888 +#b8b8b8 +#F89800 +#000000 +#A8B8D0 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/730_shiny.txt b/ShinyChanges/FollowPals/730_shiny.txt new file mode 100644 index 0000000..c3c3f85 --- /dev/null +++ b/ShinyChanges/FollowPals/730_shiny.txt @@ -0,0 +1,16 @@ +#D0A0B0 +#1f2e1f +#aae3e3 +#c9f0f0 +#385778 +#8dbaba +#cee8f0 +#293d29 +#505058 +#204520 +#2b5e2b +#409840 +#58b058 +#000000 +#8dbaba +#ebf5f2 diff --git a/ShinyChanges/FollowPals/735_normal.txt b/ShinyChanges/FollowPals/735_normal.txt new file mode 100644 index 0000000..fb8be71 --- /dev/null +++ b/ShinyChanges/FollowPals/735_normal.txt @@ -0,0 +1,16 @@ +#E898B8 +#F800F8 +#F800F8 +#F800F8 +#F800F8 +#F800F8 +#852f25 +#ab3d2e +#f05d43 +#203868 +#F800F8 +#5080B0 +#88B0D0 +#B8C8D8 +#101010 +#F8F8F8 diff --git a/ShinyChanges/FollowPals/735_shiny.txt b/ShinyChanges/FollowPals/735_shiny.txt new file mode 100644 index 0000000..5e006d2 --- /dev/null +++ b/ShinyChanges/FollowPals/735_shiny.txt @@ -0,0 +1,16 @@ +#E898B8 +#F800F8 +#F800F8 +#F800F8 +#F800F8 +#F800F8 +#505090 +#4868a0 +#6898d0 +#ab342e +#F800F8 +#f06850 +#f8a888 +#B8C8D8 +#101010 +#F8F8F8 diff --git a/ShinyChanges/FollowPals/742_shiny.txt b/ShinyChanges/FollowPals/742_shiny.txt new file mode 100644 index 0000000..6a0f20c --- /dev/null +++ b/ShinyChanges/FollowPals/742_shiny.txt @@ -0,0 +1,16 @@ +#C8D8B8 +#986028 +#C88038 +#E0A068 +#f59acb +#f5d5dc +#80744f +#d6b998 +#f0e2b6 +#9038a8 +#f088e8 +#f0b8e0 +#889098 +#B0B8C0 +#000000 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/743_shiny.txt b/ShinyChanges/FollowPals/743_shiny.txt new file mode 100644 index 0000000..3ede03f --- /dev/null +++ b/ShinyChanges/FollowPals/743_shiny.txt @@ -0,0 +1,16 @@ +#D0B090 +#F800F8 +#F800F8 +#F800F8 +#F800F8 +#F800F8 +#F800F8 +#F800F8 +#347d7d +#586068 +#384048 +#214f4f +#4aafba +#88d0e0 +#000000 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/744_shiny.txt b/ShinyChanges/FollowPals/744_shiny.txt new file mode 100644 index 0000000..71e9353 --- /dev/null +++ b/ShinyChanges/FollowPals/744_shiny.txt @@ -0,0 +1,16 @@ +#B0D090 +#F800F8 +#F800F8 +#660022 +#962942 +#cf2945 +#f55384 +#b34d6b +#f0a0b8 +#f0b8d0 +#F800F8 +#404048 +#505868 +#B0B8C0 +#000000 +#E8E8F8 diff --git a/ShinyChanges/FollowPals/746.btx b/ShinyChanges/FollowPals/746.btx new file mode 100644 index 0000000000000000000000000000000000000000..26afe1b2110fb07fc8f0d16063935b5fbc5ecd6b GIT binary patch literal 4544 zcmeH}&uiRP5XVRBwY`NFq-cF`AfU)*$wFGJot2Bh3t2}_X+pq@tmX#^U9Yi>w}GUI zW3}nQrWcc3!fqP3GCh?Lh)7R86&hmbHHWmm^PkOUIbZ96&*;v}u@Okro zYTkGBX67$W?7dZBM*~nnfjj`r&t9B(N*rIA>DXLTB!gt~Uz2rm4 z@ls|$xe6I*WQPYA28Raf%3!9R9m+1`hKK6|xuG05)YACS0A=Hpv>VdyNDGSeOS>WM zj~(aJD!+LFUQl3%l6yjxCxr37^d73D&mnc=1Zt23$YN#;vXgzEEnU;WwsMWJMpWQ zCkk9!lP{vA3)V3s*(eD{li$;vBk=S*bJd}O(~cwO1H|#gyq4hVP|~2j`AJ-`xh#3> z>%ehVgV2{9w(o{t1wY&kJL9)kqNo{m#)rbUQFPCg-HArpf?pevt)(%zb${_epu_m5 z;;(uOzQ(&vM7Xo@ae<>|y-hssDW+{JwNX zM?)vi>WufXVa|w?B44WIj&#xi6p$wOADc|3ShVD!7Wqy1wKIcuwR5(PxjNqeb<=9L-t#)t8i~8BcCbkNm5w^;d|=a!9eJx*LEGyxR4Q22 zAH4X0)iQDnb!+T*X4OWG6yE8O