|
|
08.05.2005, 09:44
|
#321
|
|
Re: Скриптинг в Готике
2Beliar@Alexey:
В нем instance Wisp_Detector(Mst_Default_Wisp) это и есть ищущий огонек?
|
Да, это он и есть.
Там я смотрел, а как сделать диалог, например, для нового npc "none_077_NewNPC", что-бы он хотя бы говорил мне привет, рассказал что-нить...
|
Посмотри диалог, например, с тем же огоньком. Все довольно просто, пишем сам диалог C_Info и две функции, условие начала диалога и сам диалог.
|
|
|
08.05.2005, 19:04
|
#322
|
|
Re: Скриптинг в Готике
Помогите плиззззз!!!!!! Вот мой скрипт: instance NONE_666_Bartolo (NPC_DEFAULT)
{
name = "Бартоло"; guild = GIL_NONE; id = 666; voice = 8; level = 15; Npctype = NPCTYPE_MAIN; flags = NPC_FLAG_IMMORTAL; /////*********Атрибуты*********** attribute[ATR_STRENGT H] = 200; attribute[ATR_DEXTERITY] = 200; attribute[ATR_MANA_MAX] = 1000; attribute[ATR_MANA] = 1000; attribute[ATR_HITPOINTS_MAX] = 900; attribute[ATR_HITPOINTS] = 900; // ------ Тактика боя ------
fight_tactic = FAI_HUMAN_COWARD; // ------ Амуниция ------
EquipItem (self, ItMw_1h_Bau_Mace); // ------ Инвентарь ------
B_CreateAmbientInv (self); // ------ Визуализация ------
B_SetNpcVisual (self, MALE, "Hum_Head_Bald", Face_N_Bartholo, BodyTex_N,ItAr_Orebaron_Addon );
Mdl_SetModelFatness (self, 0);
Mdl_ApplyOverlayMds (self, "Humans_Militia.mds"); // ------ Таланты ------
B_GiveNpcTalents (self); // ------ Владение оружием ------
B_SetFightSkills (self, 100); // ------ Распорядок дня ------
daily_routine = Rtn_Start_666; };
FUNC VOID Rtn_Start_666 ()
{
TA_Stand_Eating (08,00,23,00,"Nw_XARDAS_TOWER_02");
TA_Stand_ArmsCrossed (23,00,08,00,"Nw_XARDAS_TOWER_02");
}; Где нужно дальше прописать своего NPC,чтобо он появился в игре??????????
|
|
|
08.05.2005, 20:42
|
#323
|
|
|
|
|
Регистрация: 19.06.2004
Адрес: г. Белая Калитва.
Сообщений: 204
|
|
|
|
|
|
Re: Скриптинг в Готике
2Zaraza123:1. Не нужно делать типа
. Лично у меня сразу пропало желание отвечать. 2. Слабо порытся по тем ам о модмейкерстве, этот вопрос поднимался много раз. З.Ы.А вообще, нужно добавлять в Startup.d, создать ему диалог.
|
|
|
08.05.2005, 22:35
|
#325
|
|
Re: Скриптинг в Готике
2Zaraza123:
Где в Startup.d надо добавить,например Wld_InsertNp (NONE_666_Bartolo, "NW_BIGFARM_ALLEE_HUT "); чтобы NPC появился в игре???? И как узнать где надо дописывать в Startup.d????Заранее спасибо!
|
Если посмотреть в конец файла startup.d, то можно увидеть две функции, STARTUP_AddonWorld() и INIT_AddonWorld(), из первой вызывается несколько функций, например: STARTUP_ADDON_PART_BANDITSCAMP_01(), в ней прописаны НПС из лагеря бандитов и т.д. Своего НПС можно вставить в любую из этих функций. Если НПС должен быть "глобальным" (доступен в любом месте скриптов), то его необходимо зарегистрировать в файле NPC_Globals.d, там ничего сложного нет, все понятно.
|
|
|
09.05.2005, 00:37
|
#327
|
|
Re: Скриптинг в Готике
Вопрос этот... наверное только Ваму, т к он по-моему лучше всех разбирается в скриптах и движке Г, но может всетаки есть и другие, хорошо понимающие эту тему, люди. Так вот, собственно сам вопрос. Как просчитывается путь нпс от одной точки к другой и как определяется дорожка(тропинка), по которой должен идти нпс(что там в этом месте медом намазано?). Т е почему нпс идет именно по дорожке, а не, например, напрямую? Как определяется дорожка? Надеюсь я понятно спросил. За ранее спасибо.
|
|
|
09.05.2005, 01:07
|
#328
|
|
Re: Скриптинг в Готике
Так вот, собственно сам вопрос. Как просчитывается путь нпс от одной точки к другой и как определяется дорожка(тропинка), по которой должен идти нпс(что там в этом месте медом намазано?). Т е почему нпс идет именно по дорожке, а не, например, напрямую? Как определяется дорожка? Надеюсь я понятно спросил. За ранее спасибо.
|
Введи в консоли готики toggle waypoint (кажись) и сразу всё поймешь... Появится такая красная линия с точками типа city1 city2 nw_bigfarm_torlof (Это и есть вайпоинты) и т.п., а по ним npc, как по рельсам и бегут =)
|
|
|
09.05.2005, 04:00
|
#330
|
|
Re: Скриптинг в Готике
2Boris Tor:
А как тогда можно сделать такую тропинку самому, что необходимо для этого знать, 3дмас или скрипты, или то и другое.
|
Надо просто немного поработать со Спейсером. Создаешь новые вэйпоинты, между ними вэйнеты. Вообще об этом писалось уже не раз в Русской доке!
|
|
|
09.05.2005, 16:54
|
#333
|
|
Re: Скриптинг в Готике
2Zaraza123:
Можно более подробнее описать,где в Startup.d надо добавить,чтобы появился NPC в игре???За ранее спосибо!!!
В русской доке по Spaser2 finch все очень хорошо описал:что,куда и зачем надо дописывать.
finch писал:
Возможно, проблемы из-за того, что ты неправильно прописал новую строчку в startup.d Дело в том, что он еще разбит и на составляющие части, поэтому ты мог вставить нового НПС в мире аддона или на старой карте. Открой этот файл и найди строчку Wld_InsertNpc (BAU_900_Onar, "BIGFARM"); и после нее пропиши Wld_InsertNpc (NONE_666_Finch, "NW_BIGFARM_ALLEE_HUT");
Если НПС так и не появится - войди в Игру, пропиши MARVIN и используй команду insert NONE_666_Finch
Если и сейчас не вставится, тогда ошибка в файле NONE_666_Finch.d Пробуй разобраться!
|
|
|
10.05.2005, 15:00
|
#336
|
|
Re: Скриптинг в Готике
Попытался орков в Г1 (это важно) вооружиеть арбалетами... Что из этого вышло.
Если у орка стоит гильдия GIL_ORCWARRIOR - то он даже не может его использовать и при "вселении" в него с помощью марвина, арбалет также не активируется, нельзя зачехлить вынутое оружие ближнего боя...
НО, если в скриптах изменить гильдию например на GIL_NONE - тогда орк начинает пользоваться арбалетом, при "вселении" в него марвином, можно получить доступ к инвентарю, можно вытаскивать и зачехлять любое доступное для орка оружие. НО! с нейтральной гильдией орк Ессесно не нападает первым :)
В Г2(а) там орк с любой гильдией может владеть арбалетом.
Как мне показалось это устанавливается набором восприятий PERC_xxx, так вот, где можно увидеть\установить список восприятий для гильдий или отдельных видов монстров\персонажей... И какие восприятия отвечают за использование оружия дальнего боя, зачехление оружия, доступ к инвентарю?
|
|
|
10.05.2005, 17:14
|
#337
|
|
Re: Скриптинг в Готике
2Ukur:
Как мне показалось это устанавливается набором восприятий PERC_xxx, так вот, где можно увидеть\установить список восприятий для гильдий или отдельных видов монстров\персонажей... И какие восприятия отвечают за использование оружия дальнего боя, зачехление оружия, доступ к инвентарю?
|
Все наборы восприятий для НПС людей и монстров находятся в файле ..AI\AI_Intern\Perception.d, восприятия за доступ к оружию не отвечают, они инициализируют только реакцию на кого-либо или что-либо, далее (применительно к оружию), на реакцию агрессии для людей вызывается функция B_Attack(...) и из неё вызывается обработчик состояния атаки ZS_Attack(), в котором НПС (человек) и выбирает взависимости от цели нужное оружие. Для монстров (и орков) есть отличие, обработчик состояния атаки ZS_ММ_Attack() вызывается сразу из восприятий как реакция на агрессию. Предлагаю сравнить обработчики состояний атаки для людей и монстров, и в последнем выделить орков и приписать им выбор оружия взависимости от цели. Вообще вся эта тема подробно разобрана в Уроках скриптологии. Желаю удачи! ;)
|
|
|
10.05.2005, 21:22
|
#339
|
|
Re: Скриптинг в Готике
2Zaraza123:
Объясните как создавать диалоги для NPC и если можете объяснить на каком-нибудь примере???За ранее *спосибо!!!!!!!!!!
|
Ответ в теме Русская дока по Spacer II стр. 29 пост 703
|
|
|
11.05.2005, 02:17
|
#340
|
|
Re: Скриптинг в Готике
2Vam:
Все наборы восприятий для НПС людей и монстров находятся в файле ..AI\AI_Intern\Perception.d,
|
Ну вот это я знал.. :)
восприятия за доступ к оружию не отвечают, они инициализируют только реакцию на кого-либо или что-либо, далее (применительно к оружию), на реакцию агрессии для людей вызывается функция B_Attack(...) и из неё вызывается обработчик состояния атаки ZS_Attack(), в котором НПС (человек) и выбирает взависимости от цели нужное оружие. Для монстров (и орков) есть отличие, обработчик состояния атаки ZS_ММ_Attack() вызывается сразу из восприятий как реакция на агрессию. Предлагаю сравнить обработчики состояний атаки для людей и монстров, и в последнем выделить орков и приписать им выбор оружия взависимости от цели.
|
А вот это уже интересно и во многом у меня проявляется смысл... - - - А хотелось бы попроще... Как я писал в ответе 335 о гильдиях... На определенную гильдию (в данном случае на gil_orcwarrior) повесить все восприятия гильдии людей (например: gil_none)... и у орка при гильдии gil_none в игре появляется абсолютно все, что нужно, даже урон от оружия расчитывается как у человека, а функция "ZS_ММ_Attack()" вообще лесом обходится :), но орк становится дружелюбным :) Эх, будем разбираться :) - - - Вопрос 2. Как я понял в скриптах Г2, можно управлять отображением предметов в инвентаре с помошью переменных: var int inv_zbias;//Масштаб предмета в инвентаре var int inv_rotx; //Поворот предмета в инвентаре относительно оси X var int inv_roty; //Поворот предмета в инвентаре относительно оси Y var int inv_rotz; /Поворот предмета в инвентаре относительно оси Z var int inv_animate; //Вращение предмета в инвентаре Я захотел такое же сделать для Г1, и изменил файл classes.d, при первом запуске игры, оказалось что этого делать нельзя! Впоследствии я узнал почему :) "ВНИМАНИЕ!!! Нельзя удалять неиспользуемые поля в классах, а также добавлять новые, это потребует переделки экзешника!" Эх, невнимательность :) И что? Неужели никак нельзя в Г1 скриптово управлять отображением предметов в инвентаре? :(
|
|
|
11.05.2005, 09:59
|
#341
|
|
Re: Скриптинг в Готике
2Ukur:
А хотелось бы попроще... Как я писал в ответе 335 о гильдиях... На определенную гильдию (в данном случае на gil_orcwarrior) повесить все восприятия гильдии людей (например: gil_none)... и у орка при гильдии gil_none в игре появляется абсолютно все, что нужно, даже урон от оружия расчитывается как у человека, а функция "ZS_ММ_Attack()" вообще лесом обходится , но орк становится дружелюбным
|
Всё дело в том, что деление на людей и монстров во всех скриптах идет через константу GIL_SEPERATOR_HUM, наиболее простое решение я предложил ранее, но, конечно, возможно перетащить орка в категорию людей, но для этого необходимо: 1. Выделить ему свободную гильдию, но, так как таких гильдий в части людей нет, проверки во всех условиях должны быть двойные, сначала на гильдию, затем на НПС. (Добавить новую гильдию нельзя, правда можно потытаться сдвинуть разделитель между людьми и орками вверх). 2. Ввести во все нужные функции определенные условия, чтобы орки не вели себя полностью как люди. 3. Откорректировать таблицу и функции отношений между гильдиями. Ну, а если глобально, то по сути переделать всю систему AI.
Неужели никак нельзя в Г1 скриптово управлять отображением предметов в инвентаре?
|
К сожалению, нет.
|
|
|
12.05.2005, 17:14
|
#343
|
|
|
|
|
Регистрация: 15.04.2004
Адрес: Санкт-Петербург
Сообщений: 372
|
|
|
|
|
|
Re: Скриптинг в Готике
2Zaraza123:
Ты млин уже достал со своими ?????? и !!!!!!! А по поводу твоего вопроса: язык игры зависит от языка файлов gothic.dat и ou.bin, которые получаются при компиляции скриптов. Так что язык в игре напрямую зависит от того, какие ты используешь скрипты. Ты, похоже, использовал немецкие скрипты, добавив в них своего НПС ::) Чтобы игра оставалась русской нужно сначала раздобыть русские скрипты, проще всего их получить при помощи Декомпилятора от Vam'a.
|
|
|
12.05.2005, 18:30
|
#345
|
|
Re: Скриптинг в Готике
2Zaraza123:
А где можно скачать Декомпилятор от Vam'a.
|
Читай форум внимательно. Последнее устное предупреждение. Советую быстренько сделать выводы.
|
|
|
12.05.2005, 18:54
|
#346
|
|
Re: Скриптинг в Готике
2Zaraza123:
А где можно скачать Декомпилятор от Vam'a.
|
Есть ссылка в FAQ, раздел Программы (там же и графическая оболочка), правда там версия не последняя, а последнюю v2.1 можно взять на Яндексе, почта DiccuricAG, пароль forum. И почитай тему Декомпилятор скриптов Готики, правда она уже съехала на 3 страницу.
|
|
|
13.05.2005, 09:37
|
#348
|
|
Re: Скриптинг в Готике
2Ukur:
Можно ли увеличть количество максимальных спеллов-заклинаний (59 в Г1)?
|
Можно, также можно использовать 5 последних свободных заклинаний ( 54-58 ) для своих нужд.
|
|
|
15.05.2005, 23:54
|
#349
|
|
Re: Скриптинг в Готике
Такой вопрос: Были у меня осложнения с флагами... flags = NPC_FLAG_"бессмертие"; flags = NPC_FLAG_"Прозрачность"; Почему выполняется токо 2 флаг? А первый игнорируется.
Cпойлер(щелкните, чтобы прочесть):
Это при создании npc
|
|
|
16.05.2005, 00:09
|
#350
|
|
|
|
|
Регистрация: 19.06.2004
Адрес: г. Белая Калитва.
Сообщений: 204
|
|
|
|
|
|
Re: Скриптинг в Готике
2Beliar@Alexey: ИМХО, тебе нужно прописать не так как ты сделал, т.е. в 2 строки, а попробовать: flags = NPC_FLAG_IMMORTAL l NPC_FLAG_GHOST; З.Ы. l - это одна вертикальная палочка.
|
|
|
18.05.2005, 06:36
|
#353
|
|
Re: Скриптинг в Готике
2Borisoff:
Может я неправильно понял, но ведь toogle waynet отображает названия вайпоинтов и вайнеты.
|
Все правильно, мне это было и нужно... Респект! Хых, мне стыдно - я не знаю всех команд консоли :)
|
|
|
18.05.2005, 18:05
|
#355
|
|
Re: Скриптинг в Готике
2Zaraza123:
Я создал миссию для NPC,всё работает,но как сделать ,чтобы после её завершения она отображалась в выполненых заданиях,а не остовалась в текущих.
|
Используй функцию void Log_SetTopicStatus(string name,int status); - установить статус status темы с именем name (предопределены следующие статусы - LOG_RUNNING (выполняется), LOG_SUCCESS (успешно завершена), LOG_FAILED (провалена), LOG_OBSOLETE (завершена по другому пути)).
|
|
|
18.05.2005, 21:59
|
#359
|
|
|
|
|
Регистрация: 19.06.2004
Адрес: г. Белая Калитва.
Сообщений: 204
|
|
|
|
|
|
Re: Скриптинг в Готике
Вопрос такой: Какие существую ф-и для управления камерой во время игры. Я имею ввиду, чтобы камера была не за спиной ГГ, а если я написал скрипт - сцену, где у NPC cвои действия, и Гг там может и не быть, но чтобы камера выполняла мои определенные команды. Например: стоять здесь, через 15 секунд наезд, потом облет и прочее.
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
Опции темы |
Поиск в этой теме |
|
|
Ваши права в разделе
|
|
|
|
Текущее время: 19:52. Часовой пояс GMT +4.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|