в героях вот такая структура файлов модели
есть файл Model иногда он идет без пометки, внутри него ссылки на файлы
Material
Skeleton
Geometry
первый файл выводит на файл Texture, а он уже на dds файл с нормальной текстурой – ее можно открыть и перекрасить
Skeleton и Geometry содержат в себе данные о модели, а именно коды, отсылающие на скелет и модель
у моделей из оригинальной игры они могут быть вписаны в сам файл Model
возьми мод псатхи и попробуй найти там такой файл
можно вообще отсылаться на файлы из оригинальной игры как у мстителя
файл модели
<?xml version="1.0" encoding="UTF-8"?>
<Model>
<Materials>
<Item href="Revenger.(Material).xdb#xpointer(/Material)"/>
</Materials>
<Skeleton href="/Characters/Creatures/Necropolis/AlternativeUpgrade/SkeletonWarrior-skel.xdb#xpointer(/Skeleton)"/>
<Geometry href="/Characters/Creatures/Necropolis/AlternativeUpgrade/SkeletonWarrior-geom.xdb#xpointer(/Geometry)"/>
<Animations/>
<WindPower>1</WindPower>
</Model>
теперь об анимации
файл AnimSet
внутри этого файла записаны пути к файлам отвечающим за разные анимации
анимсет
<AnimSet>
<animations>
<Item>
<Kind>attack00</Kind>
<Anim href="Revenger-arena-attack00.xdb#xpointer(/BasicSkelAnim)"/>
</Item>
<Item>
<Kind>happy</Kind>
<Anim href="Revenger-arena-happy.xdb#xpointer(/BasicSkelAnim)"/>
</Item>
<Item>
<Kind>hit</Kind>
<Anim href="Revenger-arena-hit.xdb#xpointer(/BasicSkelAnim)"/>
</Item>
<Item>
<Kind>idle00</Kind>
<Anim href="Revenger-arena-idle00.xdb#xpointer(/BasicSkelAnim)"/>
</Item>
<Item>
<Kind>move</Kind>
<Anim href="Revenger-arena-move.xdb#xpointer(/BasicSkelAnim)"/>
</Item>
<Item>
<Kind>stir00</Kind>
<Anim href="Revenger-arena-stir00.xdb#xpointer(/BasicSkelAnim)"/>
</Item>
<Item>
<Kind>stir01</Kind>
<Anim href="Revenger-arena-stir01.xdb#xpointer(/BasicSkelAnim)"/>
</Item>
</animations>
<ExpSrcScene/>
<ExpSrcClipFolder/>
<ExpRootTransform/>
</AnimSet>
внутри каждой анимаций так же есть числовой код отвечающий за нее, путь к файлу звука, и к файлу ЭФФЕКТА
отдельная анимация
<?xml version="1.0" encoding="UTF-8"?>
<BasicSkelAnim>
<SrcName href="/H5A2/Creatures/AlternativeUpgrades/Necropolis/T1_SkeletonWarrior/SkeletonWarrior.mb"/>
<uid>0C9C5A1E-FC1C-4F9A-A2D5-F5E7C2649C9F</uid>
<ExpSrcClip href="/H5A2/Creatures/AlternativeUpgrades/Necropolis/T1_SkeletonWarrior/Animations/Clip/SkeletonWarrior.idle00.ma"/>
<ExpRootTransform>Global</ExpRootTransform>
<ExpFrameFirst>0</ExpFrameFirst>
<ExpFrameLast>0</ExpFrameLast>
<ExpSettingsFile href=""/>
<MovementSpeed>0</MovementSpeed>
<SpeedFactor>1</SpeedFactor>
<Sound href="/Sounds/_(Sound)/Creatures/Necropolis/T1/idle00.xdb#xpointer(/Sound)"/>
<Effect href="/Effects/_(Effect)/Characters/Creatures/Neutral/H5A0/Revenger/idle.(Effect).xdb#xpointer(/Effect)"/>
<SpeedLineFallTime>250</SpeedLineFallTime>
<SpeedLineMaterial/>
</BasicSkelAnim>
для начала надо потренироваться на моделях с уже готовыми эффектами, например те же мстители имеют навешанный шлем, щит левый и правый наплечники и меч
в файле эффекта есть ссылка на каждую навешанную модель, а точнее на файл ModelInstance
эффект
<?xml version="1.0" encoding="UTF-8"?>
<Effect>
<Instances/>
<Lights/>
<Models>
<Item href="Revenger_helmet.(ModelInstance).xdb#xpointer(/ModelInstance)"/>
<Item href="Revenger_LC.(ModelInstance).xdb#xpointer(/ModelInstance)"/>
<Item href="Revenger_RC.(ModelInstance).xdb#xpointer(/ModelInstance)"/>
<Item href="Revenger_sword.(ModelInstance).xdb#xpointer(/ModelInstance)"/>
<Item href="Revenger_shield.(ModelInstance).xdb#xpointer(/ModelInstance)"/>
</Models>
<WindAffected>false</WindAffected>
<WindPower>1</WindPower>
<Duration>2.5</Duration>
</Effect>
теперь об ModelInstance
в этих файлах прописан путь к навешанной модели, ее положение по xyz, поворот вокруг этих же осей, масштабирование и привязка к кости
моделинстанс
<?xml version="1.0" encoding="UTF-8"?>
<ModelInstance>
<Model href="Revenger_helmet.(Model).xdb#xpointer(/Model)"/>
<SkelAnim/>
<Position>
<x>0</x>
<y>0</y>
<z>0.2</z>
</Position>
<Rotation>
<x>0</x>
<y>0</y>
<z>0</z>
<w>1</w>
</Rotation>
<Scale>1</Scale>
<Offset>0</Offset>
<CycleLength>0</CycleLength>
<CycleCount>0</CycleCount>
<GlueToBone>1</GlueToBone>
<GlueToNamedBone>Head</GlueToNamedBone>
</ModelInstance>
редактировать эффекты надо через редактор карт , когда ты его запустишь то автоматически вылезет окно свойств карты, выстави существо Псатхи на карту, выдели его и тогда окно свойств карт переделается в окно свойств объекта, найди строку с путем к файлу mapobject, нажми на путь, появится кнопка с многоточием и кнопка new - жми на многоточие
откроется окно с путями к файлам model и animset также надо нажать на строку с animset и выбрать многоточие, потом точно также открыть нужную анимацию (idle), дальше эффект и нужный ModelInstance, в нем надо менять параметры позиции, поворота и масштаба пока модель не будет сидеть нормально