|Miscellaneous Applications [message #15142]
||Tue, 12 December 2006 20:43
Registered: July 2005
Sigh, This is something I really never wanted to do. But as requested here are some applications I wrote. Please keep in mind these applications were not meant or designed for you. There will be no support from me, I don't care if it works for you or not. Judging by the majority of the posts, it won't.|
Lets start it off simple. CAppearanceDef application, first off what does this do? It basically is the list of animations the hero users when called upon. This is essentially how I created the "Piss" Expression, you could change animation IDs for say when your hero runs with a large sword, add jumps etc... This Cdef couldn't be done with the xml so something custom was made.
Basically all you need to do is extract the CAppearanceDef for whatever you want to edit (check the cdefs in Fable Explorer). Click Open on the application, select the CAppearanceDef and then select the appropriate names.bin (if you only have one platform this is way simple). The list will load with all the name calls and the header/footer will display in textboxes (Note Xbox you can't edit header/footer). Double click whatever from the treeview and it will open a new window. Here is a brief explanation of what the buttons do:
Names.Bin List - This is just a quick search for you to look up names and offsets
Animation List - You will be asked to open Graphics.big to have a quick search of animation and ID's. This will also cause previous form to display names for animation IDs
Create - I never did move this oh well. This creates a new entry in the CAppearanceDef itself, not the entry. This was a bad design idea. You will be asked to import something it was meant to be used with Extract below. This re-orders CRC list and is Fable safe.
Extract - This extracts the entry auto-names on extraction to Name and ID. You will want to extract before you create. The naming convention will look like this ST_RUN 3432 where ST_RUN is the namesbin link and 3432 would be the Animation ID.
Import - Copies something directly over top over entry. This does not cause list to be resorted. So if you import something with a different CRC value odds are the list will not be read by Fable anymore. This was/is really meant to test out the various arrays at the tail of entry.
Apply - It writes textbox values back to file. This will not take in consideration arrays (there are 14 different types) and it will not matter. Once again CRC value is not re-ordered. If you want this to work I recommend not changing that value.
Delete - It um deletes the entry
Close - It closes the frame.
The rest of the applications will follow soon, I will more than likely delete any post in this thread so don't bother.
Update: Basic Idea of use.
1. Open up desired Creature and select its CAppearanceDef.
2. Export The CAppearanceDef (I think you can figure out how to name it)
3.With CAppearanceDef Open (common sense is not a step) Select the Open button (I know this was difficult with the freeroam app lol)
4. Select Whatever you extracted in Step #2
5. Then Follow the prompt and open up your Names.Bin Fable - The Lost Chapters\data\CompiledDefs
This one is just a quick guide to current screen now.
A. Treeview Data (This is the CRC sorted list) This List must be sorted or it will not work! Don't worry you can only break this a few ways. The names are displayed for simplicity.
B. Header Data for CAppearanceDef (you cannot edit this)
C. Tail Data is well, the tail data. You don't really need to mess with this unless you are wanting to fill in the unknowns.
D. Apply only writes data from textboxes in C.
Step #4 and further UI overview.
6. Double Click Entry to bring up new window.
Well really that is it for getting there, I'll cover some basics later in post.
E. Header Data This is the important part of the data. I do not suggest editting CRC_Name and hitting (K.) Apply. It will more than likely break your file.
F. Names.bin list. Opens a quick search tool for Names.bin so you can find data if you need to.
G. Animation List. You must point open file dialog window to your graphics.big file on your first load. This is used to quickly search the entries to get animation IDs.
H. Create This one is important! It creates a brand new entry and automatically sorts it in the list. This button should of been on the main form, but oh well.
I. Extract another Important one. It Extracts current entry. When you are saving don't worry about the name just type in random stuff it will name the file for you like this: Name - Anim ID. So if I extracted what is in the picture the file would be named LIGHT_LAMP-3179.
J. Import This imports new data over the top of the current entry. If the CRC number is not the same I do not recommend doing this.
K. Apply this writes (some) textboxes in current window. The reason I say some is that the data is being generated on a very loose system and I'll cover that in a technical addition at the bottom.
L. Delete this erases the entry.
M. Close, it umm closes it.
You will find the app writes the file on the fly so once you do something well it is ready to go.
Ok now a simple idea on how to use this application. Lets do an example on how I added the Expression stuff (please note these differ from some expressions, in the other expressions the data existed for the Hero already. We are going to create this data with the application.
Anyhow find the animation you want. I wanted the Bandit's pissing animation. So extract bandits CAppearanceDef open it up. Use the search it is much faster! Search "piss" double click treeview entry. When the new window opens hit Extract (I.)
Now open CAppearanceDef for the Hero double click any entry when the new window opens hit Create (H.) and select the data you just extracted. Keep in mind the naming system. So find ST_PISSING-1401 .
Thats it import CAppearanceDef back into Fable Explorer (you don't need to save with CAppearanceDef application it does automatically) Link your names.bin offset to new expression and that is it. You can see the names.bin offset for the entry in (E.)
Further data if you wanted to replace all side rolls/strafes with jumps you could just open desired entry and change the animation ID and select apply.
Now if you receive any errors they should just be numbers and if you haven't altered this file yourself, I need the file name and the number given. Don't be a jackass and say the file is CAppearanceDef (give specific entry) This is how the format was cracked the application was really designed to break the format and that was it.
Why does this application only write to some textboxes. Well for entry type I have the current setup and I do not care to find out more. So I left the option for you to extract and edit the data and import back over it. (That is the only reason there is a import button there!) Here is current setup, numbers are entry type numbers and exist as shown:
0 - No bytes (My personal favorite)
1 - 2 Ints (No Strange Stuff)
2 - INT, Byte, Byte (flag)
Flag = 1: Int, Byte, Float, Int
Flag = 0: Short, Int Int
3 - Int, Int, Int, Int (Flag?)
Flag = 6: Byte, Byte
Flag = 3: Int Int
Flag = anything else?: Int
4 - Int, Int, Int, Int, Int, Int, Int (Flag)
Flag = 0: Int
Flag = 4: Int, Int
Flag = 5: Int
Flag = anything else?: No further data
5 - Int, Int, Int, Int, Int, Byte, Byte (Flag)
Flag = 1: Int, Byte, Float, Float, Int, Int (String Size), ~String
Flag = 0: Short, Int, Int, Int (Flag?)
Flag = 4294966519: Int, Int, Byte, Byte
Flag !=4294966519: Int, Int, Int
[Updated on: Mon, 11 January 2010 04:26] by Moderator
|Re: Miscellaneous Applications [message #15143 is a reply to message #15142 ]
||Tue, 12 December 2006 20:59
Registered: July 2005
2 More applications. These are both unfinished and are really aimed at people who can and are able to fill in missing information. |
Met Edit. Basically this just is for solving a few sound unknowns in the met listing. This does not involve extraction/injection of sounds. Note after you hit apply it does not read changes in the program until reload of the file, it writes after you hit apply.
Saving It. This was a gamesave explorer and is worthless to most. It will only read up to entry and does not write. I tried to also add a corrupt save checker but it really is worthless.
Attachment: Met Edit.rar
(Size: 15.80KB, Downloaded 389 time(s))
(Size: 48.77KB, Downloaded 464 time(s))
[Updated on: Tue, 12 December 2006 20:59]