Home Gallery Resources The Team Rules chat Login Register
Pages: [1]
Author Topic: Adding character slots  (Read 6990 times)
0 Members and 1 Guest are viewing this topic.
Sporty824
Newbie Kitten
*
Offline Offline

Posts: 8


View Profile Awards
« on: May 22, 2015, 05:20:55 PM »


I would like to know what is entailed in adding new character slots, not just overwriting existing characters. I was wanting to add a few new characters myself but am not entirely sure how to do so. I know how to create/edit character textures and moves and know how to replace characters. What I really want to do though is add new slots. In the discussion of the clone engine posted by the Project M creators, they mention all of the work that goes into it as well as the possibilities and restrictions. The link is http://projectmgame.com/en/news/clone-engine-blogpost-limits-restrictions-and-possibilities for anyone who would like to read it. In it, they explain the basic process but not how to do it.

In it, they mention that they could add new characters by overwriting the 7 unused character slots ("forbidden 7") and linking it to a new character select screen slot. What I'd like to do is add new characters that way. I realize two slots are already taken by the addition of Roy and Mewtwo but the remaining slots are enough for the characters I want in there. I realize future updates of Project M would provide complications if any new characters are added. Even if you can't tell me exactly how to do this, I would appreciate any help or advice, even if it is just "here is a link with some reading that may help you understand what you are trying to do."

I know that BrawlEx Clone engine exists so don't immediately point me to that please. I have used it and for some reason, it doesn't work very well for me. I do everything in Dolphin (yes, I own an actual wii and a copy of Brawl, I just use my laptop because I can transport it easily and can play with my friends even though I only have one Gamecube controller) and for some reason, BrawlEx crashes. A lot. I currently use a built ISO of Project M 3.5. I would like to simply be able to make a new ISO when I am done because the SD card method crashes a lot too.

ANY help is appreciated.

Also, I have no intention of putting any version of the game that I modify up for download. If I figure out how to do it, I will gladly explain what I did unless I am asked not to by the Project M Developers.
Logged

ASF1nk
HAX PRODIGY
Supreme Kitten
********
Offline Offline

Posts: 666


  • Awards >9000 Star Hacker Heart Container Pin Collector

  • View Profile WWW Awards
    « Reply #1 on: May 23, 2015, 01:55:04 AM »


    You basically need to relocate tables, expand some tables, add new strings, set flags, make use of unused stuff, add all cosmetics, etc.

    Off the top of my head:
    CSS slots
    Character Slots
    Cosmetic slots
    Instance slots
    Record Usage
    Sound banks
    IC constants
    File names
    Victory themes
    Anouncer calls
    Result camera fixes
    Costume flags
    Load flags
    Kirby hat flags
    Entry flags
    System names
    CSPs
    BPs
    RSPs
    Franchise
    Stock Icons
    Pacs
    Modules

    All of this is not user friendly and you need at least some knowledge of coding, brawlbox, hex, etc.
    « Last Edit: May 23, 2015, 01:56:18 AM by ASF1nk » Logged

    Skype: ASF1nk



    Sporty824
    Newbie Kitten
    *
    Offline Offline

    Posts: 8


    View Profile Awards
    « Reply #2 on: May 24, 2015, 03:41:37 AM »


    I appreciate the response. Going to have a lot of spare time for a few months now that I am done with school for the summer so I will be able to put a decent amount of work into doing this. I know this is going to be a lot of work and I understand that not everyone will want to put forth the effort to help me with this. I have done a small amount of modding prior to this but this is the first time I have done anything with brawl aside from installing Project M and replacing character textures, stages, and custom music. I have some questions on almost everything.

    I know I have a lot to learn and would appreciate it if people didn't tell me to quit while I'm ahead or just use BrawlEx. I am willing to learn and put forth the work necessary to do this. Again, I appreciate any help. If you can help with certain questions but not others, just put the numbers of the ones you can answer with any assistance you can provide.

    #1 CSS Slots
    Since I plan on making an injected ISO, the file I would need to work with for the CSS would be sc_selcharacter_en.pac correct? Are there any other files I would need to work with specifically for the CSS?

    #2 Character Slots
    What is referred to here with character slots? Does that mean the spot on the CSS that each character has?

    #3 Cosmetic Slots
    Not entirely sure what is meant by cosmetic slot. From what I can find online, this looks like the stuff for the CSS like portrait, franchise icon, and announcer. Is there anything else?

    #4 Instance Slots
    I have absolutely no idea what is meant by this.

    #5 Record Usage
    Do the forbidden 7 have spots reserved for record usage? If so, how would I get the new character to point to that as the record usage? If not, since I don't care much about records, could I just have it point to another character's records?

    #6 Sound Banks
    Are these are the sound sets for each character? SFX, speech, etc.

    #7 IC Constants
    I kind of understand what they are but have no idea how to set them or where they are stored. If someone could point out somewhere I could learn more about them and where they are stored and what each one does that would be great.

    #8 File Names
    Please expand on what is meant by file names in this context.

    #9 Victory Themes
    Is this what is played when you win as this character?

    #10 Announcer Calls
    Refers to what? What is said when character is selected? What may be called for by crowd during match? The "The winner is [insert character here]" at the end of a match? All of these? Something else?

    #11 Result Camera Fixes
    Does this have to do with the part after a match when the winner and stats are displayed?

    #12 Costume Flags
    I'm guessing this is which texture is being used at which time, i.e. which color of Game & Watch is used or which Sonic color is used.

    #13 Load Flags
    Please explain what these are.

    #14 Kirby Hat Flags
    At the very least, I would need help finding where to set the flags and making the files necessary for it. I may end up just doing what Project M did for the pokemon trainer pokemon final smashes before they were actually given smashes and have it so whenever the effect would happen, nothing happens.

    #15 Entry Flags
    Please explain what these are.

    #16 System Names
    Please explain what these are.

    #17 CSPs
    After looking up exactly what it stands for, I realized I had already done some work with these and just forgot the name. These don't seem too hard to make. Should I be putting these in the sc_selcharacter_en.pac under the char_bust_text_lz77.pac archive? What indexes should I be using for the characters?

    #18 BPs
    I found some stuff online about these but I have similar questions to CSPs.  I think I know where to put them but I don't know what indexes to use.

    #19 RSPs
    Again, what indexes would I use for these.

    #20 Franchise
    I would just be referencing currently included ones. In the event I wanted to create my own franchise icon, what index would I use? The Castlevania icon is added for Dracula's Castle so that means that it must be possible to add them. The Castlevania one uses 32 which is a jump from the 23 of the last one. Would I use 33?

    #21 Stock Icons
    I am guessing these refer to the icons showing who KO'd who on the results screen. I kind of know where they are but have no idea what indexes to use.

    #22 Pacs
    What pacs? The whole game is made of them. The moveset and texture pacs for each character?

    #23 Modules
    All the stuff I can find online having to do with modules only explains the stage side of it. It mentions characters but gives no actual information on them. If someone could either explain this or give me a link to something that explains how to deal with character modules that would be great.

    #24 Since I plan on making an injected ISO, can I just copy any files I add or make changes to into the ISO I already have using Wii Scrubber?

    #25 Some pacs are in multiple places. For example, sc_selcharacter_en.pac is in the menu2 folder but is also a part of system/common5.pac. Which of these takes precedence? Which one actually matters? Will I have to edit both for any changes to take place? Some pacs contain what appears to be similar files with the same purpose. Could somebody point out which files really matter when editing everything?

    Edit:
    I didn't think about until after I hit post but I realized I may be one of the first people actually trying to do all of this. In that event, some things like indexes would be a lot of trial and error. If there is any known information that could actually help me, I would appreciate someone pointing it out. If there is nothing known, let me know that it is going to be a lot of trial and error for that part.

    After going through the filesystem, I noticed that 20, 35, 41, 42, and 44 are empty indexes. 38 is kind of empty. It has Wario's extra colors in it. Only two slots are used though.

    #26 If I were to use cBliss without the Wario "fix" that gives him 12 slots, could I use 38 for another character? If not, what else uses that index?

    #27 As for the other indexes, I would asssume those would be the ones that were for the forbidden 7 that have not already been overwritten. Could I use those as the indexes for characters I create?

    #28 What file has the default settings for brawl? I'd like to edit it so it has default stock 5, no time, team damage on.
    « Last Edit: May 24, 2015, 06:17:10 PM by Sporty824 » Logged

    ASF1nk
    HAX PRODIGY
    Supreme Kitten
    ********
    Offline Offline

    Posts: 666


  • Awards >9000 Star Hacker Heart Container Pin Collector

  • View Profile WWW Awards
    « Reply #3 on: May 28, 2015, 12:47:23 AM »


    Well mostly everything you need to know you can find it in the OpenSA Wiki.

    #1 #2 #3 #4 #7 #13 #14 #15
    Wiki

    #5
    "Finally, about the records, records are accessed through a lookup table located at memory address 0x80407A40.

    Each entry is 3 bytes long:
    0x00 Fighter Id
    0x01 Unlock Flag
    0x02 Cosmetic Id

    The only really important value is the first one. When the game goes to access the record id, it searches through the lookup table for the corresponding Fighter Id. However, if the id isn't found (Independent Pokemon, Alloys, Wario Man, etc.) the lookup returns an invalid index.

    Fortunately there is also a lookup override table which is used in the cases of Sheik and Zero Suit Samus as well as the 3 non-independent Pokemon Trainer aliases. The lookup override table is located at 0x80407BD0 and contains entries in the form of:

    0x00 Character Id
    0x01 Record Index

    Both tables are read in the function located at 800AF160.

    Unfortunately, there is not a way you can prevent the record functions from writing data if they are passed an invalid index. However, it would be possible to ensure that the record lookup function always returns a valid record index. The best way to accomplish this would be to extend the lookup override table to include all characters who don't naturally have their own record index. The 3 instructions responsible for setting the location and length of the lookup override table are the first three instructions of the lookup function."

    #6 #9 #10 #11
    Yes

    #8
    Folder name (e.g pf\fighter\Roy), module name (e.g. "ft_roy.rel"), pac names (e.g. "FitRoy.pac"), etc.

    #12
    What costumes are set for each character, so the game will try to load them. cBliss was born from this

    #16
    http://forums.kc-mm.com/index.php?topic=61315.0
    need to be expanded.

    #17 #18 #19 #21
    The index is set in the cosmetic slot

    #20
    http://forums.kc-mm.com/index.php?topic=74177.0
    http://forums.kc-mm.com/index.php?topic=67591.msg1333539#msg1333539

    #22
    FitCharacter.pac, FitCharacterXX.pac, FitCharacterFinal.pac, FitCharacterMotionEtc.pac, etc.

    #23
    http://forums.kc-mm.com/index.php?topic=53347.0
    Plug&Play modules
    You could try porting the new BrawlEx modules for other characters.

    #24
    No idea I use SD card.

    #25
    common5.pac has priority over sc_selcharacter.pac.

    #26 #27
    https://www.dropbox.com/s/djmqofkkhjv7mf7/Fighter%20Chart.png
    that can give you a good idea of what's going on

    #28
    http://smashboards.com/threads/the-default-settings-modifier-tutorial-on-how-to-use-it-and-modfiy-it-pal-code-added.243156/

    AFAIK The only people who were successful making a clone engine were the PMDT, PhantomWings, and ASF1nk (me). Sammi I think attempted one, but I don't know if he finished. At the end BrawlEx pawnt all.
    « Last Edit: May 28, 2015, 12:49:10 AM by ASF1nk » Logged

    Skype: ASF1nk



    Sporty824
    Newbie Kitten
    *
    Offline Offline

    Posts: 8


    View Profile Awards
    « Reply #4 on: May 28, 2015, 01:20:48 AM »


    Thank you for your help ASF1nk!!! I will regularly post with any progress I have made on it or any further questions to get this working. Also, I wish i had found the following link earlier.

    http://opensa.dantarion.com/wiki/Category:Clone_Engine

    EDIT:
    I just need clarification on what some files do and where certain things are stored.

    #1 In each characters folder in the fighter folder, each character has some files I am not sure what they do. I know FitChar.pac is the moveset and stuff. I know FitChar##.pac and FitChar##.pcs are textures. I would gues FitCharEntry.pac is the entrance and FitCharFinal is the final smash. What are FitCharDark.pac/pcs, FitCharSpy.pac/pcs, and FitCharMotionEtc.pac? Do I need to make all of them for a new character?

    #2 What files contain all of the cosmetic slots, css slots, and instance slots? Is there a separate file for each character's slots?
    « Last Edit: June 11, 2015, 01:20:19 PM by Sporty824 » Logged

    Pages: [1]
    Print
    Jump to: