

<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.zeroy.com/index.php?action=history&amp;feed=atom&amp;title=Call_of_Duty%3A_XANIM_formats</id>
	<title>Call of Duty: XANIM formats - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.zeroy.com/index.php?action=history&amp;feed=atom&amp;title=Call_of_Duty%3A_XANIM_formats"/>
	<link rel="alternate" type="text/html" href="https://wiki.zeroy.com/index.php?title=Call_of_Duty:_XANIM_formats&amp;action=history"/>
	<updated>2026-04-27T20:10:12Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://wiki.zeroy.com/index.php?title=Call_of_Duty:_XANIM_formats&amp;diff=16174&amp;oldid=prev</id>
		<title>CoDEmanX: Format specs XANIM_EXPORT v3 up to Black Ops</title>
		<link rel="alternate" type="text/html" href="https://wiki.zeroy.com/index.php?title=Call_of_Duty:_XANIM_formats&amp;diff=16174&amp;oldid=prev"/>
		<updated>2011-08-28T17:43:42Z</updated>

		<summary type="html">&lt;p&gt;Format specs XANIM_EXPORT v3 up to Black Ops&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= Intermediate (*.XANIM_EXPORT) =&lt;br /&gt;
&lt;br /&gt;
== Version 3 ==&lt;br /&gt;
&lt;br /&gt;
=== Header ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// Export filename: `C:/Program Files/Activision/Call of Duty 4 - Modern Warfare/xanim_export/viewmodels/M16/m16_acog_ADS_down.XANIM_EXPORT`&lt;br /&gt;
// Source filename: `C:/Program Files/Activision/Call of Duty 4 - Modern Warfare/bin/maya/animation_src/viewmodel/m16/viewmodel_m16_animation.mb`&lt;br /&gt;
// Export time: Mon Jan 07 16:17:03 2008&lt;br /&gt;
&lt;br /&gt;
ANIMATION&lt;br /&gt;
VERSION 3&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;// Comments&amp;#039;&amp;#039;&amp;#039; (optional)&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;ANIMATION&amp;#039;&amp;#039;&amp;#039; data type definition (magic word)&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;VERSION&amp;#039;&amp;#039;&amp;#039; format version number &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Bone list ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
NUMPARTS 2&lt;br /&gt;
PART 0 &amp;quot;tag_view&amp;quot;&lt;br /&gt;
PART 1 &amp;quot;tag_ads&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;NUMPARTS&amp;#039;&amp;#039;&amp;#039; number of parts / bones in file&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;PART&amp;#039;&amp;#039;&amp;#039; description:&lt;br /&gt;
**Part number&lt;br /&gt;
**&amp;quot;name string&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Animation data ===&lt;br /&gt;
&amp;lt;pre&amp;gt;FRAMERATE 30&lt;br /&gt;
NUMFRAMES 13&lt;br /&gt;
&lt;br /&gt;
FRAME 424&lt;br /&gt;
PART 0&lt;br /&gt;
OFFSET 0.0000 0.0000 0.0000&lt;br /&gt;
SCALE 1 1 1&lt;br /&gt;
X 1.0000 0.0000 0.0000&lt;br /&gt;
Y 0.0000 1.0000 0.0000&lt;br /&gt;
Z 0.0000 0.0000 1.0000&lt;br /&gt;
&lt;br /&gt;
PART 1&lt;br /&gt;
OFFSET -3.2486 8.1971 -2.4117&lt;br /&gt;
SCALE 1 1 1&lt;br /&gt;
X 0.4341 -0.1372 -0.8904&lt;br /&gt;
Y -0.0802 -0.9903 0.1135&lt;br /&gt;
Z -0.8973 0.0221 -0.4409&lt;br /&gt;
&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
FRAME 425&lt;br /&gt;
PART 0&lt;br /&gt;
...&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;FRAMERATE&amp;#039;&amp;#039;&amp;#039; frames per second (animation speed)&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;NUMFRAMES&amp;#039;&amp;#039;&amp;#039; number of animation frames&amp;lt;br /&amp;gt;---&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;FRAME&amp;#039;&amp;#039;&amp;#039; frame number&amp;lt;br /&amp;gt;Note: It doesn&amp;#039;t necessarily start at 0!&lt;br /&gt;
**&amp;#039;&amp;#039;&amp;#039;PART&amp;#039;&amp;#039;&amp;#039; part / bone number&lt;br /&gt;
**&amp;#039;&amp;#039;&amp;#039;OFFSET&amp;#039;&amp;#039;&amp;#039; translation / location (3x float)&lt;br /&gt;
**&amp;#039;&amp;#039;&amp;#039;SCALE&amp;#039;&amp;#039;&amp;#039; bone scale, always (?) 1 1 1&lt;br /&gt;
**&amp;#039;&amp;#039;&amp;#039;X&amp;#039;&amp;#039;&amp;#039; part of rotation matrix&lt;br /&gt;
**&amp;#039;&amp;#039;&amp;#039;Y&amp;#039;&amp;#039;&amp;#039; part of rotation matrix&lt;br /&gt;
**&amp;#039;&amp;#039;&amp;#039;Z&amp;#039;&amp;#039;&amp;#039; part of rotation matrix&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Notetracks ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
NOTETRACKS&lt;br /&gt;
&lt;br /&gt;
PART 0&lt;br /&gt;
NUMTRACKS 1&lt;br /&gt;
&lt;br /&gt;
NOTETRACK 0&lt;br /&gt;
NUMKEYS 2&lt;br /&gt;
FRAME 162 &amp;quot;weap_m16_clipout_plr&amp;quot;&lt;br /&gt;
FRAME 188 &amp;quot;weap_m16_clipin_plr&amp;quot;&lt;br /&gt;
&lt;br /&gt;
PART 1&lt;br /&gt;
NUMTRACKS 0&lt;br /&gt;
&lt;br /&gt;
PART 2&lt;br /&gt;
NUMTRACKS 0&lt;br /&gt;
...&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;NOTETRACKS&amp;#039;&amp;#039;&amp;#039; magic word&amp;lt;br /&amp;gt;---&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;PART&amp;#039;&amp;#039;&amp;#039; part / bone number&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;NUMTRACKS&amp;#039;&amp;#039;&amp;#039; number of notetracks, either 0 or 1. It&amp;#039;s 0 for all parts except the first (if there are any notetrack nodes)&lt;br /&gt;
Only if NUMTRACKS 1:&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;NOTETRACK&amp;#039;&amp;#039;&amp;#039; first (and only) notetrack&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;NUMKEYS&amp;#039;&amp;#039;&amp;#039; number of notetrack nodes&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;FRAME&amp;#039;&amp;#039;&amp;#039; notetrack node description:&lt;br /&gt;
**Frame number (the when)&lt;br /&gt;
**&amp;quot;string name&amp;quot; which will be used ingame for notetrack scripting&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Differences in Notetrack lists ==&lt;br /&gt;
World at War and Black Ops by Treyarch differ a little bit from the original XANIM_EXPORT version 3:&lt;br /&gt;
&lt;br /&gt;
=== CoD5 ===&lt;br /&gt;
&lt;br /&gt;
All XANIM_EXPORT files have an empty notetrack list, the nodes are separately stored as *.NT_EXPORT:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;NUMKEYS 2&lt;br /&gt;
FRAME 29 &amp;quot;knife_stab_plr&amp;quot;&lt;br /&gt;
FRAME 43 &amp;quot;knife_pull_plr&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;NUMKEYS&amp;#039;&amp;#039;&amp;#039; number of notetrack nodes&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;FRAME&amp;#039;&amp;#039;&amp;#039; description:&lt;br /&gt;
**Frame number&lt;br /&gt;
**&amp;quot;name string&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== CoD7 ===&lt;br /&gt;
At the bottom of all XANIM_EXPORT files you find this instead of a regular notetrack list:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;NUMKEYS 0&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If there are notetracks for an animation, they are separately stored as *.NT_EXPORT, which you have to specify in AssetManager to convert notetracks.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;FIRSTFRAME 50&lt;br /&gt;
NUMFRAMES 93&lt;br /&gt;
NUMKEYS 7&lt;br /&gt;
FRAME 71 &amp;quot;sndnt#fly_python_open&amp;quot;&lt;br /&gt;
FRAME 71 &amp;quot;rmbnt#reload_clipout&amp;quot;&lt;br /&gt;
FRAME 78 &amp;quot;sndnt#fly_python_empty&amp;quot;&lt;br /&gt;
FRAME 101 &amp;quot;sndnt#fly_python_load&amp;quot;&lt;br /&gt;
FRAME 101 &amp;quot;rmbnt#reload_clipin&amp;quot;&lt;br /&gt;
FRAME 123 &amp;quot;sndnt#fly_python_close&amp;quot;&lt;br /&gt;
FRAME 123 &amp;quot;rmbnt#reload_rechamber&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;FIRSTFRAME&amp;#039;&amp;#039;&amp;#039; frame number of the first frame in the corresponding XANIM_EXPORT file&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;NUMKEYS&amp;#039;&amp;#039;&amp;#039; number of notetrack nodes&amp;lt;br /&amp;gt;---&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;FRAME&amp;#039;&amp;#039;&amp;#039; description:&lt;br /&gt;
**Frame number&lt;br /&gt;
**&amp;quot;name string&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Call of Duty 1]]&lt;br /&gt;
[[Category:Call of Duty 2]]&lt;br /&gt;
[[Category:Call of Duty 4]]&lt;br /&gt;
[[Category:Call of Duty 5]]&lt;br /&gt;
[[Category:Technical Reference]]&lt;br /&gt;
[[Category:File formats]]&lt;/div&gt;</summary>
		<author><name>CoDEmanX</name></author>
	</entry>
</feed>