Kitty Corp Meow Mix Forums

Help & Tutorials => Programming Tutorials => Topic started by: Ricky (Br3) on May 01, 2020, 05:31:46 PM



Title: Adding 50CP to your Legacy TE build, featuring Pyro the 3000 IQ intellectual
Post by: Ricky (Br3) on May 01, 2020, 05:31:46 PM
Adding 50CP to your Legacy TE build, featuring Pyro the 3000 IQ intellectual
Obtained from Reddit (https://www.reddit.com/r/SSBPM/comments/cqbtp2/anyone_know_to_add_costumes_csps_bps_and_stock/ (https://www.reddit.com/r/SSBPM/comments/cqbtp2/anyone_know_to_add_costumes_csps_bps_and_stock/))
Credits probably by PYRO

(Examples at the end)

1. Codes
The codes are easily the most difficult part, but I've figured out the way it works so I'll try to make this as easy as possible.
First, some replacements. For this, each section of code will have two locations that are edited. So you will need to replace 586150 with 547000 two times for this to work. There is also a third column that tells you what character you are editing (useful for later steps)
Replace | With   | Character
586150  | 547000 | Mario
5864B8  | 5470C8 | DK
586538  | 547190 | Link
586248  | 547258 | Samus
586260  | 547320 | ZSS
586198  | 5473E8 | Yoshi
586278  | 5474B0 | Kirby
5861B0  | 547578 | Fox
586398  | 547640 | Pikachu
5863F8  | 547708 | Luigi
586488  | 5477D0 | Falcon
5862A8  | 547898 | Ness
5864D0  | 547960 | Bowser
5864E8  | 547A28 | Peach
586440  | 547AF0 | Zelda
586458  | 547BB8 | Sheik
586428  | 547C80 | ICs
5862C0  | 547D48 | Marth
5863B0  | 547E10 | G&W
5861C8  | 547ED8 | Falco
5865B0  | 547FA0 | Ganon
455334  | 548388 | Wario <<<< THIS CODE IS WRONG, don't use it
5862F0  | 548068 | Meta Knight
5863C8  | 548130 | Pit
586308  | 5481F8 | Olimar
5860D8  | 5482C0 | Lucas
5864A0  | 548388 | Diddy
5863E0  | 548450 | Zard
586170  | 548518 | Squirtle
5861F0  | 5485E0 | Ivy
586320  | 5486A8 | D3
586218  | 548770 | Lucario
586338  | 548838 | Ike
586590  | 548900 | ROB
586290  | 5489C8 | Puff
586570  | 548A90 | Tink
586368  | 548B58 | Wolf
586350  | 548C20 | Snake
586550  | 548CE8 | Sonic
586230  | 586230 | Mewtwo
5860F0  | 5860F0 | Roy

***Note: the three Pokemon will require a third replacement, thanks to mawk for pointing this out

Next, determine how many costumes you want. Between each entry (marked with 06 and then one of the numbers you just replaced, there is a line of code that determines the number of bytes to write. Use the table below to determine what you use for your section of code.
4-7 "00000010"
8-11 "00000018"
12-15 "00000020"
16-19 "00000028"
20-23 "00000030"
24-27 "00000038"
28-31 "00000040"
32-35 "00000048"
36-39 "00000050"
40-43 "00000058"
44-47 "00000060"
48-50 "00000068"

Now, you write the data for each costume. First pick a color, write the number assigned to it, and then select the PAC assigned to it, and write it's number as well. Make sure you start every line with "* " and add a space between every 8 digits you type.
Color Table
Red(T) 00, Blue(T) 01, Yellow 02, Green(T) 03, Purple 04, L. Blue 05, Pink 06, Brown 07, Black 08, White 09, Orange 0A, Gray 0B
PAC Table
00 - 00
01 - 01
02 - 02
03 - 03
04 - 04
05 - 05
06 - 06
07 - 07
08 - 08
09 - 09
10 - 0A
11 - 0B
13 - 0D
14 - 0E
15 - 0F
16 - 10
17 - 11
18 - 12
19 - 13
20 - 14
21 - 15
22 - 16
23 - 17
24 - 18
25 - 19
26 - 1A
27 - 1B
28 - 1C
29 - 1D
30 - 1E
31 - 1F
32 - 20
33 - 21
34 - 22
35 - 23
36 - 24
37 - 25
38 - 26
39 - 27
40 - 28
41 - 29
42 - 2A
43 - 2B
44 - 2C
45 - 2D
46 - 2E
47 - 2F
48 - 30
49 - 31
50 - 32

Now, write 0C00 at the end of the string and add zeroes to the end until it finishes off the line.

2. UI
Adding the UI images are the same as replacing them, just with different names. Here I'll explain it in depth for this to work.

CSPs/RSPs
For each, you can just import new CSPs and follow the same naming convention as vBrawl/vPM.
For Link, it would be MenSelchrFaceB.021-080.

Stock Icons
By far the most annoying and time consuming.
Stocks are read from StockFaceTex.brres in pf/menu/common folder. Basically follow the vPM naming structure, but with the new locations (found here: https://docs.google.com/spreadsheets/d/1ydxpdOh0G9cyNP33nRJm6dORpe5f6mVg0MR2aD8ao0A/ (https://docs.google.com/spreadsheets/d/1ydxpdOh0G9cyNP33nRJm6dORpe5f6mVg0MR2aD8ao0A/))
For Link, using TE's modified locations, it would be InfStc.0101-0150.

BPs
BPs are read in the pf/info/portrite folder. TE uses a modified naming structure to match the stock icons.
For Link, the BPs would be located at InfFace0101-150.brres.

3. Costume Files
Make sure you have all of your costumes .pacs in the correct folder. TE 2.11 does not require .pcs files anymore, and Masquerade skips over pac 12.

Example Character
For this, I want to give Ivysaur 40 costumes.
To start, I replace all of the codes listed in the first step of the codes section.
Next, I chose 40, so I add 00000058 to my codes, making my codes look like so.


Ivysaur Signifier
    V
* 065485E0 00000058 < Number of costumes

Now, I start adding the colors and pac data. After I'm done, it looks like this.

* 065485E0 00000058
* 05000001 03020103 < Costume Data
* 04040905 08060307
* 00080109 090A100B
* 050D000E 030F0110
* 04110912 08130314
* 05150016 03170118
* 0419091A 081B031C
* 001D011E 091F1020
* 05210022 03230124
* 04250926 08270328

Now I add my terminating 0C00 and any extra 0's to fill out the rest of the line.

* 065485E0 00000058
* 05000001 03020103
* 04040905 08060307
* 00080109 090A100B
* 050D000E 030F0110
* 04110912 08130314
* 05150016 03170118
* 0419091A 081B031C
* 001D011E 091F1020
* 05210022 03230124
* 04250926 08270328
* 0C000000 00000000 < Terminating Section

I then add this to [Legacy TE] Masquerade Costumes (2/2) [ds22, denz, Yohan1044] to where the existing one is (marked by 065485E0 in my case).

Once that is done, all I need to do is add UI and make sure all my character files are in order, and then Ivysaur has 40 costumes!