|
|
12.11.2007, 00:50
|
#1921
|
|
Re: М: Скриптинг в Готике
Интересная ситуация... Вот часть скрипта:
Cпойлер(щелкните, чтобы прочесть):
instance DIA_BredHelpready(C_Info) { * * *npc = UND_808_Bred; * * *nr = 9; * * *condition = DIA_BredHelpready _Condition; * * *information = DIA_BredHelpready _Info; * * *important = FALSE; * * *permanent = FALSE; * * *description = "Я принес продукты."; };
func int DIA_BredHelpready _Condition() { * * *if (MIS_Bred_Help == TRUE && (Npc_HasItems (self, ItPl_Mushroom_UND) >= 10) && (Npc_HasItems (self, ItFoMuttonRaw) >= 5) && (Npc_HasItems (self, ItPl_Health_Herb_01) >= 3)) * * *{ * * *return TRUE; * * *}; * * *return FALSE; };
При компиляции - ошибка в строке: condition = DIA_BredHelpready _Condition; ошибка: ожидается ';' Кто-нибудь может объяснить это чудо? А то работа встала...*;D ;D ;D
|
|
|
12.11.2007, 01:17
|
#1922
|
|
Re: М: Скриптинг в Готике
2basilio58:
При компиляции - ошибка в строке: condition = DIA_BredHelpready _Condition; ошибка: ожидается ';' Кто-нибудь может объяснить это чудо? А то работа встала...
|
Убери пробел между "DIA_BredHelpready" и "_Condition;". ;)
|
|
|
12.11.2007, 01:34
|
#1924
|
|
Re: М: Скриптинг в Готике
Цитата:
Сообщение от Нефариус link=board=gothic&t=1105030050&start=3852425#38524 43 date=11/12/07, в 00:17:23
2basilio58: Убери пробел между "DIA_BredHelpready" и "_Condition;". *;)
|
;D ;D Спаситель! Я уж думал, пора на пенсию.... ;D ;D ;D
|
|
|
03.12.2007, 10:47
|
#1926
|
|
Re: М: Скриптинг в Готике
2MaGoth:
00:00 Warn: 0 U: PAR: External GAME_INITENGINTL not found. .... <zParser_Symbol.cpp,#1012 00:00 Warn: 0 U: PAR: External GAME_INITENGLISH not found. ....
|
Это видимо в Startup.d прописан ангельский глобал инит для ангельского екзешника игры, уже встречал подобную проблему, решалась заменой на немецкий инициализатор или удалением оного.. см. примеры в Startup.d от "нормальных" модов :) 2MaGoth:
Это походу связано с воздействиями заклов... Функция лежит кажется в папке Magic и изначально не дописана в исходных скриптах (не хватает return). p.s. подробнее сказать не могу, т.к. пишу с работы.
|
|
|
03.12.2007, 15:02
|
#1927
|
|
Re: М: Скриптинг в Готике
2Владай:
А функцию нада в Стартапе прописывать?
|
Можно в стартапе, можно где угодно. По желанию. Триггер её под землей найдет.
|
|
|
22.01.2008, 00:11
|
#1928
|
|
Re: М: Скриптинг в Готике
Люди нужна помощь со скриптом, в зен файле создал мувер тригеры, вставил в функциях скрипт, все что делал в зене все правильно, тщательно проверил, в gothic.src включил скрипт, вроде бы ошибка в скрипте. Дело в том что, хачу сделать чтобы герой телепортировался када включал мувер а за ним тригер и скрипт. Скрипт почемуто не работает. Вот и он
var int Evt_Teleport_01_OneTime;
func void Evt_Teleport_01() { * * *if(Evt_Teleport_01_OneTime == FALSE) * * *{ * * * * * *Wld_PlayEffect ("spellFX_Teleport_RING",hero,hero,0,0,0,FALSE) ; * * * * * *Snd_Play("MFX_TELEPORT_CAST"); * * * * * *Npc_ClearAIQueue(hero); * * * * * *AI_PlayAni(hero,"T_HEASHOOT_2_STAND"); * * * * * *if(CurrentLevel == NEWWORLD_ZEN) * * * * * *{ * * * * * * * * *AI_Teleport(hero,"NW_START_TELEPORT_02"); * * * * * *}; * * *}; };
Исправьте где не правильно, буду признателен.
|
|
|
02.02.2008, 23:23
|
#1932
|
|
Re: М: Скриптинг в Готике
Люди, уменя такой вопрос: я вот сделал с помощью скриптов нового непися - мрачника (уменьшенный вариант краулера), так вот: етот монстр должен зарабатывать для ГГ опыт и драться на его стороне. Однако когда я вставил через консоль этого гада он начал мочить ГГ, и мне пошел опыт за ГГ (как ни странно, я же указывал что он PartyMember)
Cпойлер(щелкните, чтобы прочесть):
instance Drk_helper(Mst_Default_Darker) { B_SetVisuals_Darker(); attribute[ATR_HITPOINTS_MAX] = 300; attribute[ATR_HITPOINTS] = 300; aivar[AIV_PARTYMEMBER] = TRUE; B_SetAttitude(self,ATT_FRIENDLY); Mdl_SetModelScale(self,0.3,0.3,0.3); Npc_SetToFistMode(self); };
я же сделал что он по идее недолжен нападать на ГГ... Скажите кто-нибуть что здесь не так?!
|
|
|
03.02.2008, 00:57
|
#1933
|
|
Re: М: Скриптинг в Готике
2Владай: А спойлер то зачем? :) 2Владай:
я же сделал что он по идее недолжен нападать на ГГ... Скажите кто-нибуть что здесь не так?!
|
Ну, гляди пример на основе "Призванного волка" instance Summoned_Wolf(Mst_Default_Wolf) { name[0] = "Вызванный волк"; guild = gil_summoned_wolf; aivar[AIV_MM_REAL_ID] = id_summoned_wolf; level = 0; attribute[ATR_STRENGTH] = 50; attribute[ATR_DEXTERITY] = 50; attribute[ATR_HITPOINTS_MAX] = 100; attribute[ATR_HITPOINTS] = 100; protection[PROT_BLUNT] = 75; protection[PROT_EDGE] = 75; protection[PROT_POINT] = 25; protection[PROT_FIRE] = 75; protection[PROT_FLY] = 75; aivar[AIV_PARTYMEMBER] = TRUE; B_SetAttitude(self,ATT_FRIENDLY); start_aistate = ZS_MM_Rtn_Summoned; B_SetVisuals_Wolf(); Npc_SetToFistMode(self); CreateInvItems(self,ItFoMuttonRaw,1); }; guild = gil_summoned_wolf; - гильдия призванного волка, можно поюзать и для мини-краулера :) start_aistate = ZS_MM_Rtn_Summoned; - состояние призванного существа.
|
|
|
04.02.2008, 00:25
|
#1935
|
|
Re: М: Скриптинг в Готике
2Владай:
чтобы противник загорался когда ГГ стучит по нему магическим мечом
|
Белиар тебе в помощь и эта функция обработки повреждений при использовании когтя вышеупомянутого божества B_BeliarsWeaponSpecialDamage
|
|
|
06.02.2008, 20:53
|
#1937
|
|
Re: М: Скриптинг в Готике
2man:
У меня вопрос: Где-то тут читал про программу от Vam'а. Что за программа?
|
Читай тутТакже тема про GothicSourcer есть и на АГ. М:Декомпилятор скриптов ГотикиP.S. Стоит добавить в шапку
|
|
|
08.02.2008, 10:44
|
#1939
|
|
Re: М: Скриптинг в Готике
2man:
Ничего не могу понять. Нигде в папке с Готикой не могу найти тех файлов, папок о которых пишут здесь. Например папки Story у меня нет.
|
Установи Пакет GothicModDevelopmentKit (только немецкая версия) Либо декомпилируй скрипты Gothic.dat + Ou.bin
|
|
|
08.02.2008, 12:08
|
#1940
|
|
Re: М: Скриптинг в Готике
Цитата:
Сообщение от Ukur link=board=gothic&t=1105030050&start=4008125#40081 26 date=02/03/08, в 23:25:09
2Владай: Белиар тебе в помощь и эта функция обработки повреждений при использовании когтя вышеупомянутого божества B_BeliarsWeaponSpecialDamage
|
Я пробовал на досуге присвоить мечу какое-нибудь заклинание, указав в мэйн флаг, что у меня и меч и руна, но тогда движок отказался воспринимать этот предмет и как меч и как руну. B_BeliarsWeaponSpecialDamage на мой взгляд неприменима, поскольку в заклинание может позволить мне более сложную логику, к тому же указанная функция работает не при каждом ударе :)
|
|
|
08.02.2008, 13:59
|
#1941
|
|
Re: М: Скриптинг в Готике
2terrorblade:
Я пробовал на досуге присвоить мечу какое-нибудь заклинание, указав в мэйн флаг, что у меня и меч и руна, но тогда движок отказался воспринимать этот предмет и как меч и как руну.
|
Иначе и быть не может :) 2terrorblade:
B_BeliarsWeaponSpecialDamage на мой взгляд неприменима, поскольку в заклинание может позволить мне более сложную логику
|
А каким местом вы ее применяли? :) 2terrorblade:
к тому же указанная функция работает не при каждом ударе
|
Она и написана разработчиками с таким намерением. И если вы не можете приспособить ПРИМЕРную функцию под свои нужды, может вообще не стоит лезть в дебри скриптинга?
|
|
|
09.02.2008, 11:34
|
#1944
|
|
Re: М: Скриптинг в Готике
2terrorblade:
Строишь из себя умного, да? Есть ли смысл в твоём посте? Даже не удосужился глянуть в скрипты. Ты не помог мне ни на грамм, а лишь распушил перед народом свой хвост.
|
Ну во всяком случае мне хватило ума применять эти функции под свои нужды и не писать ерунды, типа: 2terrorblade:
B_BeliarsWeaponSpecialDamage на мой взгляд неприменима, поскольку в заклинание может позволить мне более сложную логику,
|
2terrorblade:
B_BeliarsWeaponSpecialDamage написана через восприятия и вызывается она через B_AssessDamage() и B_MM_AssessDamage(), ты можешь дать мне гарантию, что эти функции вызываются всегда, даже если я запрещу все восприятия?
|
А ты мне дашь гарантию, что если человеку выколоть глаза - он будет ими видеть? Собсно это из той же оперы с восприятиями. Добавление от 02/09/08, в 10:38:56 2MaGoth:
PS. Если хочешь чтото реализовать, глянь в скрипты и посмотри, нет ли подобного решения в них, возможно оно уже реализовано где нибудь. Обычно это помагает.
|
Дык, 2terrorblade: уже носом ткнули в нужную функцию, результат как видишь отрицательный :)
|
|
|
09.02.2008, 18:39
|
#1946
|
|
Re: М: Скриптинг в Готике
2terrorblade:
но так же бил цепной молнией всех, стоящих в радиусе 300(в том числе тех, на кого не действует B_BeliarsWeaponSpecialDamage).
|
Нет ничего проще! В двигле есть такое восприятие PERC_ASSESSOTHERSDAMAGE отвечающее за восприятие чужих повреждений свидетелями и функция для обработки реакции монстров B_MM_AssessOthersDamage, для людей подобную функцию придется писать самому. В нашем случае свидетели должны получать те же повреждения что и жертва. Попробуй в функцию B_MM_AssessOthersDamage вставить B_BeliarsWeaponSpecialDamage также как это прописано в B_MM_AssessDamage, ну а радиус уже отрегулируй дополнительными функциями.
|
|
|
10.02.2008, 00:15
|
#1948
|
|
Re: М: Скриптинг в Готике
2Владай:
GothicSourser_v3.14 отказывается воспринимать конструкции типа:
IF (bla bla bla) { что_делать; }; ELSE { что-то_другое; };
|
Ну и правильно, перед ELSE точка с запятой не ставится!
|
|
|
10.02.2008, 19:04
|
#1950
|
|
Re: М: Скриптинг в Готике
2man:
Последний мой глупый вопрос. Что нужно сделать что бы декомпилировать Gothic.dat?
|
Читай еще раз мой ответ: (Ответ #1934) 6 февраля 2008, 21:53
|
|
|
11.02.2008, 11:17
|
#1952
|
|
Re: М: Скриптинг в Готике
2terrorblade:
когда движок будет вызывать функцию Calculate_Damage(item) - каждый раз при создании предмета или вызовет при первом создании, а потом будет юзать полученный результат?
|
Все тела инстанций выполняются движком только один раз - при первой загрузке предмета, далее используется только копия загруженной инстанции.
|
|
|
11.02.2008, 14:40
|
#1953
|
|
Re: М: Скриптинг в Готике
2Vam: А существует ли тогда вообще возможность реализации динамически изменяемого дамага, если использовать лишь 1 предмет? ЗЫ: Я тебе на почту кинул письмецо с проблемкой, пока ответа не получил :((( Добавление от 02/11/08, в 13:44:33
далее используется только копия загруженной инстанции.
|
Причём изменять параметры копии как я понимаю бесполезно :(((
|
|
|
11.02.2008, 14:47
|
#1954
|
|
Re: М: Скриптинг в Готике
2terrorblade:
А существует ли тогда вообще возможность реализации динамически изменяемого дамага, если использовать лишь 1 предмет?
|
Возможность существует, только надо определить условия изменения дамага и куда их всунуть (зависит от условий).
Я тебе на почту кинул письмецо с проблемкой, пока ответа не получил
|
На какую почту? Я ничего не получал.
|
|
|
11.02.2008, 16:53
|
#1956
|
|
Re: М: Скриптинг в Готике
2Vam:
Возможность существует, только надо определить условия изменения дамага и куда их всунуть (зависит от условий).
|
У нас например в моде дамаг оружия динамически изменяется во время боя в зависимости от текущей выносливости ГГ и прокачки мастерства фехтования за счет управления атрибутом ATR_STRENGTH, а для прокачки "отображаемой реальной" силы введена другая переменная.
|
|
|
11.02.2008, 17:08
|
#1958
|
|
Re: М: Скриптинг в Готике
2terrorblade:
Как именно обновляется дамаг оружия?
|
Я выше все расписал. Реально сам дамаг инстанции предмета НЕ МЕНЯЕТСЯ, меняется именно атрибут ATR_STRENGTH, который и калькулирует нужный дамаг.
|
|
|
11.02.2008, 17:34
|
#1960
|
|
Re: М: Скриптинг в Готике
2terrorblade:
Идея проста и гениальна, а что вы сделали, чтобы движок отображал не силу, а что-то другое?
|
menu.dat тоже можно подвергнуть декомпиляции и редактированию, а "дргая" сила, ловкость и прочие новые атрибуты вынесены на игровой экран
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
Опции темы |
Поиск в этой теме |
|
|
Ваши права в разделе
|
|
|
|
Текущее время: 00:11. Часовой пояс GMT +4.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|