Важно 9 мая - День Победы!
  • 33
  • 3
Поздравляю всех, кому искренне небезразличен этот день! С днём Великой Победы!
Новости Анонс The Elder Scrolls VI уже этим летом?
  • 300
  • 1
По данным инсайдера eXtas1s, Bethesda может впервые показать The Elder Scrolls VI летом 2025 года Обсуждается возможность анонса игры на одной из крупных презентаций Xbox - в июне или августе...
Новости Of Ash and Steel: разработка в цифрах
  • 317
  • 0
На днях авторы игры Of Ash and Steel поблагодарили игроков за поддержку и положительные отклики, а также поделились цифрами во время разработки. В игре будут: 300+ квестов; 30 000+ строк...
Новости Clair Obscur: Expedition 33 – новая ролевая игра, ломающая стереотипы
  • 483
  • 1
Clair Obscur: Expedition 33 – уникальная ролевая игра, которая могла появиться только у инди-разработчика Раз в год Художница просыпается и рисует на Монолите. Выводит свое проклятое число. И...

В процессе Как "вставляются" мобы из одного мода в другой?

GotPlr

Новичок
Регистрация
1 Апр 2022
Сообщения
1
Реакции
0
Баллы
0
Лучшие ответы
0
#1
Всем привет. Скачал GothicVDFS и GothicSourcer. Прочитал руководство от Vam и посты от Xterm. В общих чертах примерно понятно, но когда доходит до деталей...Сам в этом совсем новичок. Но пробую разобраться в скриптах.
В качестве примера, вот захотелось мне перенести кое-каких мобов из модификации "Зов Огня" (а в частности Крысолюдов) в мод "Золотые Ворота". Как сделать так, чтобы при игре в "Золотые Ворота" я мог вызывать их там через Marvin, а также как расставить их по Яркендару?
В декомпилированном датнике, в скрипте "set_szczurolud_visuals.d" имеются прототип и функции

Код:
prototype MST_DEFAULT_SZCZUROLUD(C_NPC)
{
    name[0] = "Крысолюд";
    guild = GIL_SNAPPER;
    aivar[AIV_MM_REAL_ID] = ID_SZCZUROLUD;
    level = 10;
    attribute[ATR_STRENGTH] = 50;
    attribute[ATR_DEXTERITY] = 90;
    attribute[ATR_HITPOINTS_MAX] = 100;
    attribute[ATR_HITPOINTS] = 100;
    attribute[ATR_MANA_MAX] = 0;
    attribute[ATR_MANA] = 0;
    protection[PROT_BLUNT] = 20;
    protection[PROT_EDGE] = 20;
    protection[PROT_POINT] = 15;
    protection[PROT_FIRE] = 0;
    protection[PROT_FLY] = 0;
    protection[PROT_MAGIC] = 0;
    damagetype = DAM_EDGE;
    fight_tactic = FAI_SNAPPER;
    senses = SENSE_HEAR | SENSE_SEE | SENSE_SMELL;
    senses_range = 3000;
    aivar[AIV_MM_FOLLOWTIME] = 10;
    aivar[AIV_MM_FOLLOWINWATER] = FALSE;
    start_aistate = zs_mm_allscheduler;
    aivar[AIV_MM_RESTSTART] = ONLYROUTINE;
};

func void set_szczurolud_visuals()
{
    Mdl_SetVisual(self,"SZCZUROLUD.mds");
    Mdl_SetVisualBody(self,"SZCZUROLUD_Body",DEFAULT,DEFAULT,"",DEFAULT,DEFAULT,-1);
};


instance SZCZUROLUD(MST_DEFAULT_SZCZUROLUD)
{
    set_szczurolud_visuals();
    Npc_SetToFightMode(self,itmw_1h_misc_axe);
};
В скрипте "Al_Constants.d" помимо кучи констант имеется также значение - const int ID_SZCZUROLUD = 65;

В скрипте Startup.d имеются некоторые функции среди которых вот эта: startup_kapturek(), а в ее теле строчки
Код:
Wld_InsertNpc(szczurolud,"WM3");
Wld_InsertNpc(szczurolud,"WM3");
Wld_InsertNpc(szczurolud,"WM3");
Wld_InsertNpc(szczurolud,"WYSPA");
Wld_InsertNpc(szczurolud,"WM13")
Вторые аргументы функции - скорее всего координаты локации (в Зове Огня), где они расставлены. Я так понимаю мне их надо будет подогнать под Яркендар (Золотые Ворота).

Чет путаюсь. Что вырезать, а что оставить в Gothic.dat? Каков алгоритм действий? Кто подскажет?

Комментарий модератораТеги CODE для кого придумали, скриптёр? Исправил.
 
Последнее редактирование модератором:
Сверху Снизу