3ds-исходник должен лежать в папке _work\Data\Meshes.Я поместил свой файл .3ds в \_work\Data\Meshes\_compiled\
Скомпилировать mrm-файл можно в двух режимах. Самый простой способ - это компиляция движком игры. Нужно просто запустить игру. Исходник, как уже сказано выше, должен лежать в папке _work\Data\Meshes, результат компиляции помещается движком в папку _work\Data\Meshes\_compiled.GothicStarter_Mod и нажал «конвертировать все»
Добавлю, что не просто запустить, а ещё загрузить сохранение (или начать новую игру) и оказаться рядом с требуемой моделью, чтобы она загрузилась в память. Если это визуал предмета, то его можно вставить через консоль, а если модель окружения - то телепортироваться или подойти к ней. Также можно использовать Спейсер, чтобы быстро подлететь к нужному месту в мире или поменять какому-нибудь ближайшему объекту визуал на нужную модель и выйти, не сохраняя открытый zen-файл.Нужно просто запустить игру.
В игре нет моделей с такими названиями, поэтому надо делать компиляцию всего.ElderGamer , D36
Для проверки:
1) Я извлек файл .mrm из gothic/data/Meshes.vdf
2) Я импортировал файл в блендер
3) Я экспортировал файл в .3ds
4) Я переименовал файл в глупое имя, например asdfasdf444.3ds
5) Я помещаю файл в \_work\Data\Meshes\
6) Я запустил GothicStarter.exe
7) Я загрузил игру, сохранил игру, начал новую игру
8) Ни один скомпилированный файл не появился в папке \_work\Data\Meshes\_compiled\
То же самое ничего не происходит, когда я пытаюсь это сделать с файлом, который действительно хочу скомпилировать.
В игре нет моделей с такими названиями, поэтому надо делать компиляцию всего.
Если не хочешь так заморачиться
1. Полностью распакуй Meshes.vdf и Meshes_addon.vdf в папку готики, чтобы все файлы были в gothic\_work\Data\Meshes\_Compiled
2. Удали расширения файлов Meshes.vdf и Meshes_addon.vdf, чтобы они больше не работали в игре
3. Дальше создаешь свой 3ds файл
4. Копируешь файл в gothic\_work\Data\Meshes\ и оставляешь у него название то, которое необходимо
5. Удаляешь этот же файл в gothic\_work\Data\Meshes\_Compiled
6. Теперь можно зайти в игру, найти обьект, который заменил, если отобразился в игре новый, сделал всё правильно.
7. И важно проверять оригинальную игру, а не модификацию какую-то!
4) Я переименовал файл в глупое имя, например asdfasdf444.3ds
Используй логику. Зачем движку игры искать и компилировать модель с названием asdfasdf444.3ds, если такая модель не используется ни одним объектом в загруженном игровом мире?8) Ни один скомпилированный файл не появился в папке \_work\Data\Meshes\_compiled\
Я хочу изменить размер объекта в игре, изменив его сетку.
/////////////////////////
// ATTACK
//////////////////////////
ani ("s_FistAttack" 1 "s_FistAttack" 0.0 0.0 M. "golem_attackstep_KP01.asc" F 1 49)
{
*eventTag (0 "DEF_HIT_LIMB" "BIP01 R HAND" )
*eventTag (0 "DEF_OPT_FRAME" "27" )
*eventTag (0 "DEF_HIT_END" "49" )
*eventTag (0 "DEF_WINDOW" "27 49" )
// *eventTag (0 "DEF_DIR" "O" )
*eventSFX (1 "GOL_ATTACK" EMPTY_SLOT )
}
ani ("t_FistAttackMove" 2 "" 0.1 0.1 M. "Golem_AttackMove_A02.asc" F 1 31)
{
*eventSFX (18 "GOL_STEPBOOM" EMPTY_SLOT )
}
ani ("t_FistParadeJumpB" 1 "" 0.1 0.0 M. "Golem_parade_A01.asc" F 1 29)
{
*eventSFX (17 "GOL_STEPBOOM" EMPTY_SLOT )
}
aniAlias ("t_FistParade_O" 1 "" 0.0 0.0 M. "t_FistParadeJumpB" F)
ничего. Его "отбрасывание" в скриптах написано damtypeЧто тут отвечает за големовское отбрасывание?
prototype Mst_Default_StoneGolem(C_Npc)
{
name[0] = "Каменный голем";
guild = GIL_STONEGOLEM;
aivar[AIV_MM_REAL_ID] = ID_STONEGOLEM;
level = 25;
attribute[ATR_STRENGTH] = 125;
attribute[ATR_DEXTERITY] = 125;
attribute[ATR_HITPOINTS_MAX] = 250;
attribute[ATR_HITPOINTS] = 250;
attribute[ATR_MANA_MAX] = 100;
attribute[ATR_MANA] = 100;
protection[PROT_BLUNT] = 50;
protection[PROT_EDGE] = 100;
protection[PROT_POINT] = 150;
protection[PROT_FIRE] = 100;
protection[PROT_FLY] = 100;
protection[PROT_MAGIC] = 100;
damagetype = DAM_FLY; //вот он!
fight_tactic = FAI_STONEGOLEM;
senses = SENSE_HEAR | SENSE_SEE | SENSE_SMELL;
senses_range = PERC_DIST_MONSTER_ACTIVE_MAX;
aivar[AIV_MM_FollowTime] = FOLLOWTIME_MEDIUM;
aivar[AIV_MM_FollowInWater] = TRUE;
start_aistate = ZS_MM_AllScheduler;
aivar[AIV_MM_RestStart] = OnlyRoutine;
};
prototype Mst_Default_Addon_SwampGolem(C_Npc)
{
name[0] = "Болотный голем";
guild = GIL_SWAMPGOLEM;
aivar[AIV_MM_REAL_ID] = ID_SWAMPGOLEM;
level = 25;
attribute[ATR_STRENGTH] = 125;
attribute[ATR_DEXTERITY] = 125;
attribute[ATR_HITPOINTS_MAX] = 250;
attribute[ATR_HITPOINTS] = 250;
attribute[ATR_MANA_MAX] = 0;
attribute[ATR_MANA] = 0;
protection[PROT_BLUNT] = 75; //125;
protection[PROT_EDGE] = 125;
protection[PROT_POINT] = 250;
protection[PROT_FIRE] = 125;
protection[PROT_FLY] = 125;
protection[PROT_MAGIC] = 125;
damagetype = DAM_FLY; //и вот!
fight_tactic = FAI_STONEGOLEM;
senses = SENSE_HEAR | SENSE_SEE | SENSE_SMELL;
senses_range = PERC_DIST_MONSTER_ACTIVE_MAX;
aivar[AIV_MM_FollowTime] = FOLLOWTIME_MEDIUM;
aivar[AIV_MM_FollowInWater] = TRUE;
start_aistate = ZS_MM_AllScheduler;
aivar[AIV_MM_RestStart] = OnlyRoutine;
};