Home Gallery Resources The Team Rules chat Login Register
Pages:  [1] 2 3 4 ... 16
Author Topic: TheShyGuy's EXE stuff - NEW -> Bone Tree Editor V1.1 Released  (Read 68785 times)
0 Members and 1 Guest are viewing this topic.
TheShyGuy
Holy Kitten
*
Offline Offline

Posts: 1003


  • Awards Super Saiyan Topic KCMM Veteran Heart Container Dedicated Hacker

  • View Profile Awards
    « on: December 26, 2010, 01:39:43 PM »


    Programs:

    Bone Tree Editor beta
    Bone Tree Editor V1.1

    External Graphics Editor v1

    *ABLE TO EDIT/TAKE EXT GFX FROM ANY EFLS->MISCDATA[1].  
    From
    stages
    characters
    final smashes
    adventure stages
    enemies
    minigames

    To
    assist Trophies



    Summary:


    Bone Tree Editor:
                                      - Allows you to move bones anywhere on the bone tree by drag and dropping within a tree view. Can also edit attributes in textboxes to the right(flags,nodeIds,etc)

    External Graphics Editor v1:
                                   - allows you to replace sub ext gfxs by drag and dropping from one tree view to another.  Able to edit Final smashes, characters, and stages ext gfx, ANY EFL-> MISC[1] EXT FILE



    Tutorial

    Bone Tree Editor V1
    open exe
    file -> load file -> choose mdl0 file
    TopNOffset window opens -> enter top n offset
    press the load tree buttton

    - Tree View-
    just as easy as drag and dropping nodes onto other nodes
    ..pretty self explanatory...

    problems:
    sometimes when you click and hover over a node, the name turns transparent...no biggie lol


    Bone Tree Editor V1.1 Tut-
    File-load-Choose Mdl0

    - Tree View-

    just as easy as drag and dropping nodes onto other nodes
    ..pretty self explanatory...

    problems:
    sometimes when you click and hover over a node, the name turns transparent...no biggie lol


    DL
    http://www.mediafire.com/?ug66z5qqnu6837p

    External Graphics Editor V1:


    * if you didnt do this yet, export all the miscdata[1] files you want/need and put them in a folder.  You can rename the files as long as you keep "MiscData[1]" with it

    1) Load the Exe.
    2A) file -> Load:
             2Aa)choose the main character you want to edit
             2Ab) if you already chose a main character, choose the other character to load to use for gfx

    2B) file  -> load folder
            2Ba)choose the main character you want to edit
            2Bb)if you have already loaded the main character, choose the folder with all the "MiscData[1]" files
                    to load
    *If there are two of the same files, it will only load one of them
    * the main char tree view of ext gfx will appear
    *It will only find filenames that include "MiscData[1]" + whatever you want

    3) From the drop down box on the right, choose the character you want that you want to view, a tree view will load showing their ext gfx

    4) choose an ext gfx and drag and drop to the main character tree view onto an ext gfx to replace it
    *"Ptc" gfx names will/can not be replaced because they call the sub gfx...and i havent figured out how to call em lol

    5) edit away

    6) save As..self explanatory..hopefully


    Extras:
    -Shows how much bytes added/subtracts
    -Shows current file size
    -Shows total Gfx
    -Shows total subgfx(replacable ones)
    -if the tree node text turns green, it has been replaced
    -It loads miscdata[1] files
    -Edits Final Smashes,Characters,and stage ext gfx(MiscData[1])

    DLs

    Bone tree Editor
    http://www.mediafire.com/file/kwc98887gk3udgz/Bone%20Editor%20Test.exe

    Ext Gfx Editor
    http://www.mediafire.com/?bq4qkinz6j95wgr

    Ext. Gfx Editor Test/proof pacs:

    http://www.mediafire.com/file/1r1moki9m5rojfh/FitFalcotest.pac
    http://www.mediafire.com/file/yxttakb3x6oqdw5/FitMario.pac
    http://www.mediafire.com/file/u2sjlu7vz2lzhmk/FitMarioFinal1.pac
    http://www.mediafire.com/file/4v1092j27aiyado/FitSnaketest.pac


    credit: Tcll -> his notes helped me figure out the miscdata file
               microsoft -> creator of c#

    I might improve this to add gfx/sfx too since they both have the same format

    *Tip: For more gfx.  Find a character with alot of ext gfx and use dingos tutorial to replace the current file.  Then use my exe to edit them.
    ^ snakes has 90+ ext gfx

    http://forums.kc-mm.com/index.php?topic=13960.0

    *Tip: Export alot/all of the characters Miscdata1 files.  Make sure to keep "MiscData[1]" within the name.Put them all in one folder.  Use the load folder to load all the files at once.

    « Last Edit: January 18, 2011, 05:04:39 PM by TheShyGuy » Logged

    TheShyGuy
    Holy Kitten
    *
    Offline Offline

    Posts: 1003


  • Awards Super Saiyan Topic KCMM Veteran Heart Container Dedicated Hacker

  • View Profile Awards
    « Reply #1 on: December 26, 2010, 02:39:30 PM »


    reserved
    « Last Edit: December 26, 2010, 03:09:41 PM by theshyguy » Logged

    DarkPikachu
    Angel Kitten
    ***
    Offline Offline

    Posts: 3069


    complexity == fun

  • Awards Super Saiyan Topic Heart Container KCMM Veteran Tutorial Writer

  • View Profile Awards
    « Reply #2 on: December 26, 2010, 03:26:41 PM »


    well your editor just won't load Pika's final Tongue

    I take it your editor loads pac files that contain tex0 files correct??

    if I'm right then I can tell you how to edit Pika's Smiley
    Logged


    Quote: Friedslick6
    you have been through a lot of hassle. I've watched every topic you posted on this, and most of them seemed to disintegrate gradually.
    But the coolest part was that you didn't stop working on it despite that.

    Quote: Internet Explorer
    you're doing more with your life right now than probably most other people around you. You're a valuable asset to the Smash community. So yeah, you should be proud.

    quote: Greg
    You do have a gift which I've seen many developers use to their advantage. You can become a great coder, and with all of those ideas I think you can really build something great.

    TheShyGuy
    Holy Kitten
    *
    Offline Offline

    Posts: 1003


  • Awards Super Saiyan Topic KCMM Veteran Heart Container Dedicated Hacker

  • View Profile Awards
    « Reply #3 on: December 26, 2010, 03:28:25 PM »


    lol your supposed to export the miscdata 1 then load that into my program =p

    edit: i tried and it loads his ext gfx fine
    « Last Edit: December 26, 2010, 03:33:10 PM by theshyguy » Logged

    DarkPikachu
    Angel Kitten
    ***
    Offline Offline

    Posts: 3069


    complexity == fun

  • Awards Super Saiyan Topic Heart Container KCMM Veteran Tutorial Writer

  • View Profile Awards
    « Reply #4 on: December 26, 2010, 04:15:25 PM »


    lol your supposed to export the miscdata 1 then load that into my program =p

    edit: i tried and it loads his ext gfx fine

    oh so you've also figured out the REFT format Shocked

    AND YOU FIGURED OUT THE REFF FORMAT! O.O
    I've been trying to figure that out for like the longest time

    how did you do it??
    how does it work??

    btw, what do I do when I get the file imported?? Tongue

    EDIT:
    here's my REFT notes:
    Code:
    REFT notes:

    main header:
    0x00(4): REFT
    0x04(2): ??
    0x06(2): ?? ('0007')
    0x08(4): filesize
    0x0C(2): ?? ('0010')
    0x0E(2): internal file count

    internal file header(0x10)
    0x00(4): REFT
    0x04(4): filesize - 8
    0x08(4): header length - 8 (from 0x18)
    0x0C(4): '00 00 00 00'

    header P2:--
    0x20(4): '00 00 00 00'
    0x24(2): string length [ '000B' = 11 ]
    0x26(2): ?? ('0000')
    0x28(?): string [ len('46696E50696B6163687500') = 11 ]
    0x##(?): -pad until header length- (following string)
    --

    string table:
    0x00(4): block size
    0x04(2): # of strings
    0x00(4): string length

    -after string-
    0x00(4): data offset - (header length + 24)
    0x00(4): data offset length

    I'd really like to know the REFF plz 8|

    EDIT2:
    here's what I did through hexing:
    « Last Edit: October 06, 2022, 11:43:27 AM by DarkPikachu » Logged


    Quote: Friedslick6
    you have been through a lot of hassle. I've watched every topic you posted on this, and most of them seemed to disintegrate gradually.
    But the coolest part was that you didn't stop working on it despite that.

    Quote: Internet Explorer
    you're doing more with your life right now than probably most other people around you. You're a valuable asset to the Smash community. So yeah, you should be proud.

    quote: Greg
    You do have a gift which I've seen many developers use to their advantage. You can become a great coder, and with all of those ideas I think you can really build something great.

    TheShyGuy
    Holy Kitten
    *
    Offline Offline

    Posts: 1003


  • Awards Super Saiyan Topic KCMM Veteran Heart Container Dedicated Hacker

  • View Profile Awards
    « Reply #5 on: December 26, 2010, 04:20:12 PM »


     I'm trying to figure out how to add gfx now.  After u load n edit just save and replace the misc within the final PAC. If ur mean after loading then load another file n choose it from the drop down box. Then dnd from right to left

    edit : oh lol 1 sec
    heres what i got/needed to know for the program
    Code:
    0x0(4) -REFF
    0x6(2) -? 7?
    0x8(4) - file size
    0x12(2) - ?
    0x14(2) - ?
    0x16(4) - REFF
    0x20(4) - file size - 24
    0x24(4) - part1 size offset + 24(from beginning)
    0x36(2) - Char name length
    --part1 size offset-- + 24 = p
    0xP(4) part1 size
    0x^+2 = total gfx count

    string
    0x2 - string length
    0x+length - string
    -after string-(4) - gfx offset + P
    ^(4) - gfx size


    « Last Edit: December 26, 2010, 04:48:34 PM by theshyguy » Logged

    DarkPikachu
    Angel Kitten
    ***
    Offline Offline

    Posts: 3069


    complexity == fun

  • Awards Super Saiyan Topic Heart Container KCMM Veteran Tutorial Writer

  • View Profile Awards
    « Reply #6 on: December 26, 2010, 04:28:50 PM »


    from what I know, the REFF is basically models...

    but I see you've figured out the seperate ACT's with it...

    please tell me how o.o

    the texture data to replace in the REFT is basically the TEX0 data section...
    I have a working template on the REFT data for HexEdit if you want it Smiley
    « Last Edit: December 26, 2010, 04:30:14 PM by Tcll » Logged


    Quote: Friedslick6
    you have been through a lot of hassle. I've watched every topic you posted on this, and most of them seemed to disintegrate gradually.
    But the coolest part was that you didn't stop working on it despite that.

    Quote: Internet Explorer
    you're doing more with your life right now than probably most other people around you. You're a valuable asset to the Smash community. So yeah, you should be proud.

    quote: Greg
    You do have a gift which I've seen many developers use to their advantage. You can become a great coder, and with all of those ideas I think you can really build something great.

    TheShyGuy
    Holy Kitten
    *
    Offline Offline

    Posts: 1003


  • Awards Super Saiyan Topic KCMM Veteran Heart Container Dedicated Hacker

  • View Profile Awards
    « Reply #7 on: December 26, 2010, 04:37:39 PM »


    read my edit ^ thats all i needed to know in order to make the exe. I just deleted the original gfx data and replaced it with the new gfx data. Then i fixed the file size, file size-24, part1 size, and the part 1 gfx offsets(+P) and sizes

    edit: yeh id like the template, i wnna figure out how to add gfx lol. i added a whole"ptc" gfx along with its subgfx alreadt, but the char had to be in game for it to work >.>
    « Last Edit: December 26, 2010, 04:46:36 PM by theshyguy » Logged

    DarkPikachu
    Angel Kitten
    ***
    Offline Offline

    Posts: 3069


    complexity == fun

  • Awards Super Saiyan Topic Heart Container KCMM Veteran Tutorial Writer

  • View Profile Awards
    « Reply #8 on: December 26, 2010, 05:08:50 PM »


    ah... so you really don't have too much further than my notes on it :/

    Code:
    main header:
    0x00(4): REFF
    0x04(2): ??
    0x06(2): ?? ('0007')
    0x08(4): filesize
    0x0C(2): ?? ('0010')
    0x0E(2): internal file count

    internal file header:
    0x00(4): REFF
    0x04(4): filesize - 8 (of internal file)
    0x08(4): header length
    0x0C(4): '00 00 00 00'

    header P2:
    0x20(4): '00 00 00 00'
    0x24(2): string length
    0x26(2): ?? '0000'
    0x28(?): string
    0x##(?): -pad until header length-

    string table:
    0x00(4): block size
    0x04(2): # of strings
    0x06(2): '0000'
    0x08(2): string length

    -after string-
    0x00(4): data offset - (header length + 24)
    0x00(4): data offset length

    as for the template, you already know what to do right??

    Code:
    <?xml version="1.0"?>
    <!DOCTYPE binary_file_format SYSTEM "BinaryFileFormat.dtd">
    <binary_file_format name="REFT" type_name="" comment="" expr="" default_byte_order="big" default_read_only="false" default_char_set="ansi">
    <define_struct type_name="data" comment="" expr="">
    <data type="int" name="string_len" format="unsigned" len="2" display=""/>
    <data type="string" name="image_name" format="ascii" len="string_len" display=""/>
    <data type="int" name="image_offset" format="unsigned" len="4" display=""/>
    <data type="int" name="image_len" format="unsigned" len="4" display=""/>
    <jump offset="image_offset + header.header_len + 24" comment="" origin="start">
    <struct name="image_data" type_name="" comment="" expr="">
    <data type="string" name="data" format="default" len="image_len" display="data"/>
    </struct>
    </jump>
    </define_struct>
    <struct name="header" type_name="" comment="" expr="({this.num_files} files)">
    <data type="string" name="magic" format="ascii" len="4" display=""/>
    <data type="int" name="unk1" format="unsigned" len="2" display="hex"/>
    <data type="int" name="unk2" format="unsigned" len="2" display="" comment="I think this may be an index...
    (pikachu's index number is 7)"/>
    <data type="int" name="filesize" format="unsigned" len="4" display=""/>
    <data type="int" name="unk3" format="unsigned" len="2" display=""/>
    <data type="int" name="num_files" format="unsigned" len="2" display=""/>
    </struct>
    <for name="file" count="header.num_files || header.num_files - 1" stop_test="header.num_files == 0" type_name="" comment="">
    <struct name="file" type_name="" comment="" expr="{this.header.filename}">
    <struct name="header" type_name="" comment="" expr="">
    <data type="string" name="magic" format="ascii" len="4" display=""/>
    <data type="int" name="filesize" format="unsigned" len="4" display=""/>
    <data type="int" name="header_len" format="unsigned" len="4" display=""/>
    <data type="int" name="pad1" format="unsigned" len="8" display="hex"/>
    <data type="int" name="string_len" format="unsigned" len="2" display="hex"/>
    <data type="int" name="pad2" format="unsigned" len="2" display="hex"/>
    <data type="string" name="filename" format="ascii" len="string_len" display=""/>
    <data type="string" name="pad3" len="header_len - (string_len + pad1 + 16)" format="default" display=""/>
    </struct>
    <struct name="data_table" type_name="" comment="" expr="({this.img_cnt} images)">
    <data type="int" name="table_len" format="unsigned" len="4" display=""/>
    <data type="int" name="img_cnt" format="unsigned" len="2" display=""/>
    <data type="int" name="pad" format="unsigned" len="2" display="hex"/>
    <for name="image" count="img_cnt || img_cnt - 1" stop_test="img_cnt == 0" type_name="" comment="">
    <use_struct name="image" expr="{this.image_name}" type_name="data" comment=""/>
    </for>
    </struct>
    </struct>
    </for>
    <data type="none" name="bug_fix" comment="this just stops the error you get without this...
    it does nothing to, or for the file."/>
    </binary_file_format>
    Logged


    Quote: Friedslick6
    you have been through a lot of hassle. I've watched every topic you posted on this, and most of them seemed to disintegrate gradually.
    But the coolest part was that you didn't stop working on it despite that.

    Quote: Internet Explorer
    you're doing more with your life right now than probably most other people around you. You're a valuable asset to the Smash community. So yeah, you should be proud.

    quote: Greg
    You do have a gift which I've seen many developers use to their advantage. You can become a great coder, and with all of those ideas I think you can really build something great.

    TheShyGuy
    Holy Kitten
    *
    Offline Offline

    Posts: 1003


  • Awards Super Saiyan Topic KCMM Veteran Heart Container Dedicated Hacker

  • View Profile Awards
    « Reply #9 on: December 26, 2010, 05:26:07 PM »


    what should name this as lol, REFT?
    edit:

    got it... lmoa your just as far into it as i am...
    « Last Edit: December 26, 2010, 05:42:49 PM by theshyguy » Logged

    DarkPikachu
    Angel Kitten
    ***
    Offline Offline

    Posts: 3069


    complexity == fun

  • Awards Super Saiyan Topic Heart Container KCMM Veteran Tutorial Writer

  • View Profile Awards
    « Reply #10 on: December 26, 2010, 07:53:04 PM »


    what should name this as lol, REFT?
    edit:

    got it... lmoa your just as far into it as i am...

    so you havn't deciphered the model data either -.-

    but how did you get the tree to display the correct data?? (string)
    Logged


    Quote: Friedslick6
    you have been through a lot of hassle. I've watched every topic you posted on this, and most of them seemed to disintegrate gradually.
    But the coolest part was that you didn't stop working on it despite that.

    Quote: Internet Explorer
    you're doing more with your life right now than probably most other people around you. You're a valuable asset to the Smash community. So yeah, you should be proud.

    quote: Greg
    You do have a gift which I've seen many developers use to their advantage. You can become a great coder, and with all of those ideas I think you can really build something great.

    TheShyGuy
    Holy Kitten
    *
    Offline Offline

    Posts: 1003


  • Awards Super Saiyan Topic KCMM Veteran Heart Container Dedicated Hacker

  • View Profile Awards
    « Reply #11 on: December 26, 2010, 07:59:08 PM »


    i just noticed the sfx file is in the exact same format so i think this can also edit/replace them too. (you can open the sfx(miscdata[2]) in my exe and view the sound names...which means my exe would work just the same, as if it was a gfx

    -Easy while loading the file, i just kept track of all the names.  Since theyre in order, if the gfx contains ptc, then its the main/parent of the next few until another ptc appears
    « Last Edit: December 26, 2010, 08:00:23 PM by theshyguy » Logged

    DarkPikachu
    Angel Kitten
    ***
    Offline Offline

    Posts: 3069


    complexity == fun

  • Awards Super Saiyan Topic Heart Container KCMM Veteran Tutorial Writer

  • View Profile Awards
    « Reply #12 on: December 26, 2010, 08:10:05 PM »


    i just noticed the sfx file is in the exact same format so i think this can also edit/replace them too. (you can open the sfx(miscdata[2]) in my exe and view the sound names...which means my exe would work just the same, as if it was a gfx

    -Easy while loading the file, i just kept track of all the names.  Since theyre in order, if the gfx contains ptc, then its the main/parent of the next few until another ptc appears

    say wut now??

    miscdata[2] in Pika's is the REFT file... (textures)
    Logged


    Quote: Friedslick6
    you have been through a lot of hassle. I've watched every topic you posted on this, and most of them seemed to disintegrate gradually.
    But the coolest part was that you didn't stop working on it despite that.

    Quote: Internet Explorer
    you're doing more with your life right now than probably most other people around you. You're a valuable asset to the Smash community. So yeah, you should be proud.

    quote: Greg
    You do have a gift which I've seen many developers use to their advantage. You can become a great coder, and with all of those ideas I think you can really build something great.

    TheShyGuy
    Holy Kitten
    *
    Offline Offline

    Posts: 1003


  • Awards Super Saiyan Topic KCMM Veteran Heart Container Dedicated Hacker

  • View Profile Awards
    « Reply #13 on: December 26, 2010, 08:16:09 PM »


    im talking about the psa(logic)pac lol under efls

    -edit - if thats the same pac and file your talking about then misc data 2 is the sfx file lol
    edit- if you gimmie some tips for deciphering the model, itd be nice and i will help alot....it would be awesome to view the gfx( and there animations) in our own 'brawl box'
    « Last Edit: December 26, 2010, 08:21:54 PM by theshyguy » Logged

    DarkPikachu
    Angel Kitten
    ***
    Offline Offline

    Posts: 3069


    complexity == fun

  • Awards Super Saiyan Topic Heart Container KCMM Veteran Tutorial Writer

  • View Profile Awards
    « Reply #14 on: December 26, 2010, 08:29:21 PM »


    im talking about the psa(logic)pac lol under efls

    -edit - if thats the same pac and file your talking about then misc data 2 is the sfx file lol
    edit- if you gimmie some tips for deciphering the model, itd be nice and i will help alot....it would be awesome to view the gfx( and there animations) in our own 'brawl box'

    lol no Tongue
    I was talking about the FS...

    one thing cool that's got me is:
    Pika's Volt Tackle is entirely random (besides the animation)

    it creates and destroys instances in the data

    I guess that would be when you press 'A'
    but it manipulates the data, and that I think is neat Cheesy


    and that would be nice to have Shocked
    I'm afraid I don't have anything right now,
    but I'll let you know when I do Wink
    Logged


    Quote: Friedslick6
    you have been through a lot of hassle. I've watched every topic you posted on this, and most of them seemed to disintegrate gradually.
    But the coolest part was that you didn't stop working on it despite that.

    Quote: Internet Explorer
    you're doing more with your life right now than probably most other people around you. You're a valuable asset to the Smash community. So yeah, you should be proud.

    quote: Greg
    You do have a gift which I've seen many developers use to their advantage. You can become a great coder, and with all of those ideas I think you can really build something great.

    Pages:  [1] 2 3 4 ... 16
    Print
    Jump to: