Новости Ремейк "Готики 1" | Трейлер Showcase 2024
  • 3.654
  • 9
Новички, пришло время принять реальность и смириться с судьбой. Чувствуйте себя как дома в Долине Рудников, месте, полном опасностей, преступлений и жадности. Вам предстоит оставаться здесь очень...
Готика 2: Другая история Gothic II: Other Story - Описание мода
  • 22.220
  • 78
Готика 2: Другая история / Other Story - это глобальная модификация для игры «Готика 2: Ночь Ворона». Её цель - сделать игру более нелинейной, с большим количеством вариантов выбора и...
Новости Старт 6го сезона Grim League
  • 3.510
  • 2
4 мая в 18-00 стартует шестой сезон Community лиги по одной из лучших игр в жанре arpg Grim Dawn. Сезон представляет собой глобальную модификацию игры, включающую в себя расширение мира, изменение...
Новости Дата релиза Baldur's Gate III
  • 22.498
  • 2
Наконец-то дождались - "Baldur's Gate III" покидает ранний доступ, и в августе 2023 выходит в полноценный релиз, о чём стало известно на церемонии "The Game Awards 2022". С момента выхода игры в...

Вопросы по скриптингу в Готике

Dimmell

Наемник
Модостроитель
Участник форума
Регистрация
8 Янв 2013
Сообщения
752
Реакции
398
Баллы
164
Лучшие ответы
0
А НАДО что было зелье которое пьётся одним кликом из инвентаря и пропадает после питья не ложится в слот 4 !!!
а придумать как можно удалить эту руну из инвентаря во время каста - религия не позволяет? jk
Можете подсмотреть как это реализовано в В1.1/Реб/Снк
ЗЫ. не верю что нельзя сделать все, вдобавок еще и красиво, знаю только что в лоб движок пробить не получится (типа поменял цИферьки или подобный "хитрый способ").
 

Ksardos877

Рыцарь
Модостроитель
Участник форума
Регистрация
20 Май 2014
Сообщения
2.217
Реакции
882
Баллы
356
Лучшие ответы
1
из инвентаря во время каста - религия не позволяет?
НЕ нужно время каста !!! надо без каста ! надо чтобы оно пилось как простое зелья .
жмякнул 1 раз в инвентаре,выпил(как хилку), ГГ превратился ( без кастов и хоткеев)
а в том варианте что вы предлагаете игроку придётся юзать руну ! - нажать ''4'' превратится ! этого не надо , надо - жмякнул 1 раз в инвентаре и вуаля... ( как же как и с любыми нормальными зельями... )
 
Последнее редактирование модератором:

ElderGamer

Житель города
Модостроитель
Участник форума
Регистрация
23 Апр 2015
Сообщения
243
Реакции
184
Баллы
78
Лучшие ответы
0
НЕ нужно время каста !!! надо без каста ! надо чтобы оно пилось как простое зелья .
Нужно просто сказать, что интересует вариант из Г3, где трансформация реализована с помощью зелий. Но там, по всей видимости, реализован такой вариант, как тот, что описан чуть выше: ГГ выпивает бутылочку, по окончании анимации питья запускается каст заклинания (выполняется соответствующая анимация). В Г1-Г2 анимация каста отличается от других анимаций использования магии, поэтому будет выглядеть приличнее, чем в Г3.

то очень прошу скриптовый пример , буду очень благодарен
Скорее всего, рабочий вариант тебе никто не предложит. Идеи - пожалуйста, план действий - пожалуйста. Но рабочий вариант - это другой уровень трудозатрат. Если только кто-то где-то это уже реализовал.
 

Dimmell

Наемник
Модостроитель
Участник форума
Регистрация
8 Янв 2013
Сообщения
752
Реакции
398
Баллы
164
Лучшие ответы
0
Интересно, как это будет выглядеть в игре ( я даже откопал у себя Акелловские скрипты!!!)
Побалуемся с Лункером (я уже даже забыл чем ремарить строки, пусть будет ";"):

Код:
instance ItSc_TrfLurker(C_Item)
{
	name = NAME_Spruchrolle;
	mainflag = ITEM_KAT_RUNE; \\ Можно поменять на зелья
	flags = ITEM_MULTI;
	value = Value_Sc_TrfLurker;
;	visual = "ItSc_TrfLurker.3DS";
	visual = "ItPo_Mana_01.3ds"; \\Подпихнем визуал зелья маны вместо визуала свитка
	material = MAT_LEATHER; \\ можно поменять на стекло
	spell = SPL_TrfLurker;
;	cond_atr[2] = ATR_MANA_MAX; 
;	cond_value[2] = SPL_Cost_Scroll; 
	wear = WEAR_EFFECT;
	effect = "SPELLFX_WEAKGLIMMER";
	description = NAME_SPL_TrfLurker;
	text[0] = NAME_MageScroll;
	text[1] = NAME_Mana_needed;
;	count[1] = SPL_Cost_Scroll;
	text[5] = NAME_Value;
	count[5] = value;
};
Обнулим все SPL_Cost_Scroll и SPL_Cost_TrfLurker и т.д. чтобы не жрало ману при касте, или можно заремарить строки

func int Spell_Logic_TrfLurker(var int manaInvested)
{
;	if((Npc_GetActiveSpellIsScroll(self) && (self.attribute[ATR_MANA] >= SPL_Cost_Scroll)) || (self.attribute[ATR_MANA] >= SPL_Cost_TrfLurker))
	if(Npc_GetActiveSpellIsScroll(self))
	{
;		self.attribute[ATR_MANA] = self.attribute[ATR_MANA] - SPL_Cost_TrfLurker;
---------- сюда вставляем -->>>  Npc_PlayAni (self, "Анимашка питья зелья"); 
		Npc_SetActiveSpellInfo(self,Lurker);
		return SPL_SENDCAST;
	}
	else
	{
		return SPL_SENDSTOP;
	};
};
Строки после ; можно удалять
"Анимашка питья зелья" - анимация питья, хоть убей не смог вспомнить.
Свежеиспеченное "зелье" должно удалиться из инвентаря при касте.
Как это будет выглядеть в игре? У меня нет ни Готики, ни сорсера, если кому не сложно - сваяйте видео. Очень страшшшно это будет выглядеть? ag
 
Последнее редактирование модератором:

Ksardos877

Рыцарь
Модостроитель
Участник форума
Регистрация
20 Май 2014
Сообщения
2.217
Реакции
882
Баллы
356
Лучшие ответы
1
Интересно, как это будет выглядеть в игре ( я даже откопал у себя Акелловские скрипты!!!)
Побалуемся с Лункером (я уже даже забыл чем ремарить строки, пусть будет ";"):

Код:
instance ItSc_TrfLurker(C_Item)
{
	name = NAME_Spruchrolle;
	mainflag = ITEM_KAT_RUNE; \\ Можно поменять на зелья
	flags = ITEM_MULTI;
	value = Value_Sc_TrfLurker;
;	visual = "ItSc_TrfLurker.3DS";
	visual = "ItPo_Mana_01.3ds"; \\Подпихнем визуал зелья маны вместо визуала свитка
	material = MAT_LEATHER; \\ можно поменять на стекло
	spell = SPL_TrfLurker;
;	cond_atr[2] = ATR_MANA_MAX; 
;	cond_value[2] = SPL_Cost_Scroll; 
	wear = WEAR_EFFECT;
	effect = "SPELLFX_WEAKGLIMMER";
	description = NAME_SPL_TrfLurker;
	text[0] = NAME_MageScroll;
	text[1] = NAME_Mana_needed;
;	count[1] = SPL_Cost_Scroll;
	text[5] = NAME_Value;
	count[5] = value;
};
Обнулим все SPL_Cost_Scroll и SPL_Cost_TrfLurker и т.д. чтобы не жрало ману при касте, или можно заремарить строки

func int Spell_Logic_TrfLurker(var int manaInvested)
{
;	if((Npc_GetActiveSpellIsScroll(self) && (self.attribute[ATR_MANA] >= SPL_Cost_Scroll)) || (self.attribute[ATR_MANA] >= SPL_Cost_TrfLurker))
	if(Npc_GetActiveSpellIsScroll(self))
	{
;		self.attribute[ATR_MANA] = self.attribute[ATR_MANA] - SPL_Cost_TrfLurker;
---------- сюда вставляем -->>>  Npc_PlayAni (self, "Анимашка питья зелья"); 
		Npc_SetActiveSpellInfo(self,Lurker);
		return SPL_SENDCAST;
	}
	else
	{
		return SPL_SENDSTOP;
	};
};
Строки после ; можно удалять
"Анимашка питья зелья" - анимация питья, хоть убей не смог вспомнить.
Свежеиспеченное "зелье" должно удалиться из инвентаря при касте.
Как это будет выглядеть в игре? У меня нет ни Готики, ни сорсера, если кому не сложно - сваяйте видео. Очень страшшшно это будет выглядеть? ag
спасибо , попробую, позже отпишу, ну помойку я этот вариант уже пробовал ...
 

ElderGamer

Житель города
Модостроитель
Участник форума
Регистрация
23 Апр 2015
Сообщения
243
Реакции
184
Баллы
78
Лучшие ответы
0
--------- сюда вставляем -->>> Npc_PlayAni (self, "Анимашка питья зелья");
Димм, мне кажется, в твоей реализации произойдёт следующее. При активации бутылки-руны ГГ начнёт выполнять анимацию инвестирования маны (сядет на корточки), затем, непосредственно перед превращением в зверя, ГГ вскочет, выпьет бутылочку и станет зверем.
 

refkar

Бродяга
Участник форума
Регистрация
28 Авг 2012
Сообщения
45
Реакции
14
Баллы
15
Лучшие ответы
0
Подскажите,как правильно интегрировать озвучку в мод ? (Balance_mod) Раскрыл мод с помощью vdfs,записал с помощью диктофона аудио файл,конвертировал в .wav, в моде создал папку Speech,воткнул туда аудио файл (названный DIA_DEDEROIT_q5_03_01),запаковал программой vdfs мод обратно,но нпс не озвучился.
*строчка диалога в скриптах: AI_Output(self,other,"DIA_DEDEROIT_q5_03_01"); //Здравствуй.
 

Alex1

Избранник богов
Команда форума
Модератор раздела
Редактор раздела
Модостроитель
 
Почётный пользователь
Участник форума
Регистрация
22 Янв 2014
Сообщения
11.318
Реакции
5.761
Баллы
976
Лучшие ответы
415
refkar, движок требует опред. вида .wav файлов. При конвертации лучше указать те параметры, что используются в оригинале.
Сам файл *.wav можно не запаковывать в *.vdf том, а бросить в игровую папку ...\_work\Data\SOUND\SPEECH
Если нужно запаковать, то с соблюдением вложенности папок SOUND\SPEECH
 

Ksardos877

Рыцарь
Модостроитель
Участник форума
Регистрация
20 Май 2014
Сообщения
2.217
Реакции
882
Баллы
356
Лучшие ответы
1
Проверил все варианты что предложили нечего не работает....
с мутагенками ...
Короче весь смысл в том что надо заставить Spell_Transform работать с mainflag = ITEM_KAT_POTIONS; а это не реально ... движок тупорылый ...
с mainflag = ITEM_KAT_RUNE; зелья будет в разделе руна и юзатся как руна as , заставить работать магию с другими mainflag = ..... невозможно as
по моему я всё уже перепробовал jk :hj:
instance ItSc_TrfGiantRat(C_Item)
{
name = NAME_Mutagens;
mainflag = ITEM_KAT_RUNE;
flags = ITEM_MULTI;
value = Value_Sc_TrfGiantRat;
visual = "ItPo_Perm_DEX.3ds";
material = MAT_GLAS;
spell = SPL_TrfGiantRat;
wear = WEAR_EFFECT;
effect = "SPELLFX_WEAKGLIMMER";
description = NAME_SPL_TrfGiantRat;
text[5] = NAME_Value;
count[5] = value;
};

func int Spell_Logic_TrfGiantBug(var int manaInvested)
{
if(Npc_GetActiveSpellIsScroll(self))
{
self.attribute[ATR_MANA] = self.attribute[ATR_MANA] - SPL_Cost_TrfGiantBug;
Npc_PlayAni (self,"T_POTION_RANDOM_1");
Npc_SetActiveSpellInfo(self,giant_rattransform);
return SPL_SENDCAST;
}
else
{
return SPL_SENDSTOP;
};
}
с mainflag = ITEM_KAT_POTIONS и другими предмет тупо не юзается ...
 
Последнее редактирование модератором:

Dimmell

Наемник
Модостроитель
Участник форума
Регистрация
8 Янв 2013
Сообщения
752
Реакции
398
Баллы
164
Лучшие ответы
0
с mainflag = ITEM_KAT_RUNE; зелья будет в разделе руна и юзатся как руна
Спокойно! В инвентаре - визуал зелья? С флагом ITEM_KAT_RUNE работает? Как работает... ну как выполнили мою просьбу - так я и дальше помогать буду. А если размещение в инвентаре играет решающую роль...

ЗЫ. есть еще с десяток вариантов, включая даже использование просто зелья, без рун. Дерзайте.
 
Сверху Снизу