|IFP is the animation format of the Grand Theft Auto series since GTA III. With GTA San Andreas there came a new version of the file format, but it still supports animations with the old version. IFP files can contain several single animations which are split up to objects and linked to the animated object or actor in that way. Each object contains a certain number of frames including a time key. Two frames are interpolated by the game.|
Why create a new IFP?
Well, if you dont do it ,you will need to replace existing animations. And that sometimes is annoying for Modders, specially when creating Total Conversions. So with this tutorial you will learn how to Create your own IFP or Add new Animation slots in an existent IFP.
Wait a minute! I can add new anims to SA original IFP's?
Sure!, if you know how to create an IFP, you will know how to add new anims to an existent IFP file.
In order to do this you will need a copy of 3D Studio MAX, in this tutorial i will use version 9. And in order to import/export Skeleton Data and Aniamtions you will need the KAM Max Scripts. To convert a Dumped IFP back to IFP you will need the TSB from GMAX scripts by KAM.
You can get a useless free 30-Trial version of 3D Studio Max from here:
And you may download the KAM scripts from here:
You will need this tools too, from KAM's GMAX scripts:
Note: If this is your first attempt with 3D Studio Max, i recommend you to read some tutorials in the Net to cover the basics of the program. Or read the Help and mini tutos that came with the program Itself.
2. Loading an IFP
To make your own IFP, you need another one as a Base. So, open up 3D Studio Max. Once done run the IFP IO Kam script and load a DFF model.
Select the whole model + bones and hit the "M" button in the IFP dialog box.
Now click on Load IFP and open any IFP from gta3.img
We wont work with the "ped.ifp" as it is very big, and it will take much time in the Dumping part.
Ok, so you loaded an IFP file. I loaded the Colt 45 animations.
Anim. File: The IFP file name.
Total Animation: Total Number of Anims inside the IFP.
Internal Name: The name the game uses to call the IFP.
And in the list you see each anim by name. You can double clcik one and it will apply the anim on your Model. You can see it by messing aournd with the Time Line buttons.
Now you see how the anims are shown in the IFP.
3. Dumping the IFP
Now we have to "decompile" the IFP, to do so we can close the IFP IO dialog box. And we run the IFP Dump script from the Kam's Animation Panel.
Now the Dump IFP dialog box is open, click on "Dump GTA IFP" and select the IFP we saw before. In my case the colt45.ifp.
While the Dump prossess is active you will see alot of numbers and letters flash in the bottom left of the screen, when the flashing is over and the text is static again the Dump i over.
So now press "F11" and you will see the MAX SCRIPT Listener. Select all the text there and copy it.
Open up the Notepad and paste everything there. Now save that as you want, in my case colt45.txt
4. Editing the TXT
Now, lets see what we have done. We converted an IFP file to a TXT. So it can be read by a human beeing.
Lets try to understand it.
First off, delete the Path Line.
In my case this one:
|<!-- path="C:\Documents and Settings\sonia\Escritorio\colt45.txt" -->|
Now let me explain some values:
The Header section is this part:
//This is Header Section
ANP3: Animation Package 3, Version identifier. However there is no pack with ANP2.
COLT45: This is the Name the Game uses to call this IFP file. (As seen in the IFP IO as "Internal Name")
7: Total Number of Animations (As seen in the IFP IO as "Total Animmation")
You must change the name of the IFP, there cant be more than 1 with the same name. So you may call it with the name that reprsent what kind of anims you will add in there. So, in my example i will use "PARKOUR".
If you know how many anims you will add, then change the "7" with number of anims you need inside this IFP. In my case 5.
So this is it:
//This is Header Section
Now lets move down, to the start of the first anim:
//Animation 2guns_crouchfire Start Here
26 4316 1
Thats the header of the first animation, below that you see each bone coordinates (Nothing important now).
2guns_crouchfire: Thats the name of the animation, you have to change it in the "Start here" text and below "c 24" too, must be the same name.
So, if you know what anim will go there, then just put the name of the anim. In my case it will be "BckHndSpingBTuck"
So this is the result:
//Animation BckHndSpingBTuck Start Here
26 4316 1
Each new anim beggings with the "Animation [Anim Name] Start Here", so its easy to see each of them. This IFP has 7 anims, and I only need 5. So i will go to the bottom of the text file and delete 2 anims.
Once done you will have 5 anims declared and 5 anims writed, so everything is ok. Remember to rename the other anims, in my case the other 4 anims are:
Note: Remember to delete all the Bones keys when deleting the unused anims!
If you want more anims than there are in the IFP, select the whole text from one anim. From the Header (The Start part) down until you reach the next animation Start (Dont include it). Copy it and paste it at the bottom until you counted the number of anism you want.
Remember to update the "Total Animations Number" in the IFP Header at the top of the TXT.
If everything is OK, you can save the changes and prepare for next step.
Now its time to compile the TXT, convert it to IFP again.
You will need the TSB file.
Inside you will see an exe called "T2B.EXE", its a command prompt aplication. If you are not familiar with this kind of aplication dont worry i made a Batch file to exeucte it, you will only need to change the name of the TXT to "package.txt".
Here its the batch file:
echo IFP Compiler by Delfi
echo Batch file created by Coin-goD
echo Compiling Package.txt in current folder.
echo Please wait...
T2B.EXE "package.txt" "package.ifp"
echo IFP File created.
Open a Notepad paste that code and save as "Compiler.bat".
Put the compiler, the T2B.EXE and your package.txt in the same folder. Run compiler.bat and it will compile the txt.
Now you created your own IFP file!, but wait! It still has the anims from the Colt 45 IFP.
Its time to go to the last Step to finish everything!
Ok, now open up your new IFP file with IFP IO in 3D MAX. I changed the name of the IFP to Parkour.ifp
Awesome! The Internal Name of the ifp is Parkour and the anims are listed with the new names!
But the anims are still Colt 45 ones.
So now you have to make your anims and replace them in their correct place.
What i mean is that I will make a Front Hand Spring anim, when its done i will replace the "FrntHndSrping" slot with it!
Do the same with the rest of the anims and the IFP will be ready!
Congratulations, you created you first IFP with custome anims inside!
Download the IFP i created during this tutorial:
IFP FileType Description
Custom Player Animations
Wesser, with out him this tuto wouldnt Exist.
Kam, Great Scripts.