• Уважаемые гости и новички, приветствуем Вас на нашем форуме
    Здесь вы можете найти ответы практически на все свои вопросы о серии игр «Готика» (в том числе различных модах на нее), «Ведьмак», «Ризен», «Древние свитки», «Эра дракона» и о многих других играх. Можете также узнать свежие новости о разработке новых проектов, восхититься творчеством наших форумчан, либо самим показать, что вы умеете. Ну и наконец, можете обсудить общие увлечения или просто весело пообщаться с посетителями «Таверны».

    Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
    Удачи!

Grimbald

Участник форума
Регистрация
7 Авг 2009
Сообщения
36
Благодарности
0
Баллы
150
Господа, подскажите, я хочу посмотреть составляющее некоторых текстурных паков и вот вопрос, чем открыть файлы с расширением .tex?
 

Vlad_Torop

Участник форума
Регистрация
2 Май 2014
Сообщения
870
Благодарности
499
Баллы
230
подскажите(или хотя бы ссылочку,где есть подробная инфа,туторы по порталам)
1 как сделать телепортационные платформы.В ZENе, я их установил, TriggerScript прицепил.А че и где в скриптах писать не нашел.
2 как надо все обстряпать,чтоб между двух zen миров телепортироваться?
3 как сделать,чтоб без фокусного камня,телепортне активировался?
 

Мільтен

Участник форума
Регистрация
27 Июн 2008
Сообщения
862
Благодарности
427
Баллы
265
подскажите(или хотя бы ссылочку,где есть подробная инфа,туторы по порталам)

Не видел подобных туториалов.

Отвечу теорией, так как конкретных примеров сейчас привести не могу.

1. Сама платформа - обычный воб, декорация. Рядом стоит пъедестал (на который кладем фокус. камень), перед пьедесталом невидимая кнопка. По сути, когда мы нажимаем на пьедестал, ГГ нажимает на кнопку, которая активирует мувер, у которого есть потомки: триггер и визуальный эффект телепорта. При нажатии на кнопку также активируется мувер-фокус-камень, который выезжает из под земли под пъедесталом достаточно быстро, чтобы мы этого не заметили. В процессе забираем у ГГ один фокус-камень и проигрываем звуковой эффект. В свойствах триггера должна быть строчка типа "ScriptFunc", туда ЗАГЛАВНЫМИ буквами пишем названием функции, например FUNC_MYTELEPORT, потом в решении создаем такую функцию и пишем в ее теле AI_Teleport(hero, "WAYPOINT");

2. По-хорошему между двумя зенами телепортироваться нельзя. Но можно перенести ГГ в зону перехода на другой уровень, а чтобы это не резало глаза, затемнить экран на время телепортации.

3. В свойствах кнопки, у которой я говорил в п.1 есть параметр UseWithItem, туда пишешь инстанцию фокус. камня. Тогда без него нажать на кнопку (активировать телепорт) не выйдет
 

ElderGamer


Модостроитель
Регистрация
16 Апр 2008
Сообщения
4.407
Благодарности
3.232
Баллы
525
При нажатии на кнопку также активируется мувер-фокус-камень, который выезжает из под земли под пъедесталом достаточно быстро, чтобы мы этого не заметили.

Не буду спорить со знатоками механики Г2, но почему это нельзя реализовать с помощью VOBа со слотом? В Г1 так должны были работать алтари с шаманскими сердцами: вставляешь клинок - он переходит из инвентаря в слот руки, а оттуда в слот VOBа и остаётся там. Или модель пьедестала не имеет слота?
 

Мільтен

Участник форума
Регистрация
27 Июн 2008
Сообщения
862
Благодарности
427
Баллы
265
Не буду спорить со знатоками механики Г2, но почему это нельзя реализовать с помощью VOBа со слотом? В Г1 так должны были работать алтари с шаманскими сердцами: вставляешь клинок - он переходит из инвентаря в слот руки, а оттуда в слот VOBа и остаётся там. Или модель пьедестала не имеет слота?

Впервые слышу о вобах со слотами :) Мне кажется, что у пъедестала его нет. В любом случае, я не видел абсолютно никаких отличий от обычного воба-декорации. Описанная мною механика использовалась в Ночи Ворона, так что я тут ничего принципиально нового не предложил. Идея старая, но рабочая. Думаю, если бы можно было сделать, как ты говоришь, Пираньки не придумывали бы себе лишних проблем... хотя черт его знает.
 

Beowulf

Участник форума
Регистрация
21 Ноя 2010
Сообщения
1.937
Благодарности
1.448
Баллы
465
Насколько я знаю, в Г2 eventTag "DEF_PLACE_ITEM" работает не так, как в первой части, а именно этот эвент-тэг отвечал за реализацию алтарей с орочьми сердцами. В туторе по эвент-тэгам даже было замечание по этому поводу.
Предположительно, изначально подразумевалось другое поведение eventTag'а "DEF_PLACE_ITEM", а именно: Если NPC взаимодействует с MOB'ом и у этого MOB'а есть слот "ZS_SLOT", то переместить предмет, вставленный через "DEF_INSERT_ITEM", из слота NPC в слот "ZS_SLOT" MOB'а. Пример (сердца орочьих жрецов в храме Спящего, Г1):
 

Vlad_Torop

Участник форума
Регистрация
2 Май 2014
Сообщения
870
Благодарности
499
Баллы
230
В процессе забираем у ГГ один фокус-камень и проигрываем звуковой эффект. В свойствах триггера должна быть строчка типа "ScriptFunc", туда ЗАГЛАВНЫМИ буквами пишем названием функции, например FUNC_MYTELEPORT, потом в решении создаем такую функцию и пишем в ее теле AI_Teleport(hero, "WAYPOINT");

Если не затруднит,проясните пару моментов чуть подробнее:
1 Не могу найти,где в скриптах прописывать FUNC_MYTELEPORT(или EVT_TELEPORTSTATTION_FUNC)
2 Как забрать у ГГ фокус_камень
 

Мільтен

Участник форума
Регистрация
27 Июн 2008
Сообщения
862
Благодарности
427
Баллы
265
Если не затруднит,проясните пару моментов чуть подробнее:
1 Не могу найти,где в скриптах прописывать FUNC_MYTELEPORT(или EVT_TELEPORTSTATTION_FUNC)
2 Как забрать у ГГ фокус_камень


Прописать можно практически в любом месте (главное, чтобы используемые в функции идентификаторы при компиляции обрабатывались до вызова, а то будет ошибка "Неизвестный идентификатор"). К примеру, создай новый скрипт и в SRC-менеджере размести их среди скриптов EVT_бла-бла.

В файле пиши:

Код:
func void myteleport()
{
AI_Teleport(hero,"WAYPOINT");//недостаток в том, что если триггер реагирует на пересечение неписей, и непись его пересечет, то перенесет всего равно героя.
RemoveInvItem(hero, Itmi_Focusstone);//инстанцию написал от фонаря, вместо нее пишешь, что тебе надо. Эта функция забирает только один предмет, если надо больше, пишешь RemoveInvItems(hero, Itmi_Focusstone, x); x - кол-во предметов.
}

В поле ScriptFunc триггера пишешь MYTELEPORT.

Ну и все, должно работать. Опять-таки, пишу по памяти, так что не могу гарантировать стопроцентную работоспособность.
 

Vlad_Torop

Участник форума
Регистрация
2 Май 2014
Сообщения
870
Благодарности
499
Баллы
230
В файле пиши:
Код:
func void myteleport()
{
AI_Teleport(hero,"WAYPOINT");//недостаток в том, что если триггер реагирует на пересечение неписей, и непись его пересечет, то перенесет всего равно героя.
RemoveInvItem(hero, Itmi_Focusstone);//

В общем,и целом все заработало,кроме одного:ругается на неопределенный идентификатор RemoveInvItems
скрипт MYTELEPORT.D
func void MYTELEPORT()
{ AI_Teleport(hero,"PW_DEMONECAMP");
RemoveInvItems(hero,Itmi_Focus);
};
расположен в папке events.Пробовал прописать в src в,где все eventы в начале,в конце,в середине.Все равно при компиляции ругается.
 

Beowulf

Участник форума
Регистрация
21 Ноя 2010
Сообщения
1.937
Благодарности
1.448
Баллы
465
Потому что нет RemoveInvItems, есть Npc_RemoveInvItems
Должно быть так
Код:
Npc_RemoveInvItems(hero,ItMi_Focus,1);
 

Vlad_Torop

Участник форума
Регистрация
2 Май 2014
Сообщения
870
Благодарности
499
Баллы
230
Вопрос по рудным,золотым жилам.Вставил в спасере жилу,но при использовании ее в игре пишет: "здесь больше ничего нет".Как я понимаю,где-то в скриптах надо описывать процесс добычи(какой запас в жиле,и по сколько добывается за удар).Кто-нибудь может разьяснить этот вопрос?
 

Myxomop

Почетный форумчанин
Регистрация
28 Май 2005
Сообщения
3.239
Благодарности
2.581
Баллы
455
Вопрос по рудным,золотым жилам.Вставил в спасере жилу,но при использовании ее в игре пишет: "здесь больше ничего нет".Как я понимаю,где-то в скриптах надо описывать процесс добычи(какой запас в жиле,и по сколько добывается за удар).Кто-нибудь может разьяснить этот вопрос?

Scripts\Content\Story\Dialog_Mobsis\Goldhacken.d
В скрипте золотая жила определяется по ближайшему к ГГ вейпоинту, который установлен возле жилы.
 

Vlad_Torop

Участник форума
Регистрация
2 Май 2014
Сообщения
870
Благодарности
499
Баллы
230
Проблема с интерактивными предметами(кровати,сундуки и пр.) в моем моде.При попадание в поле зрения ГГ они выделяются,но нет надписей.Focus name прописываю,файл TEXT.D присутствует.Добавлю что с itemами таких проблем нет.И при запуске оригинальной игры тоже все в порядке.
 

Мільтен

Участник форума
Регистрация
27 Июн 2008
Сообщения
862
Благодарности
427
Баллы
265
Проблема с интерактивными предметами(кровати,сундуки и пр.) в моем моде.При попадание в поле зрения ГГ они выделяются,но нет надписей.Focus name прописываю,файл TEXT.D присутствует.Добавлю что с itemами таких проблем нет.И при запуске оригинальной игры тоже все в порядке.

Проблема в ini-файле твоего мода. Там есть значение, которое отвечает за надписи при фокусе, по памяти не скажу, позже гляну и отредактирую пост.
 

SERG__ZV

Участник форума
Регистрация
17 Авг 2014
Сообщения
22
Благодарности
4
Баллы
155
Здраствуйте. В общем я хотел задать такой вопрос.
Я только недавно начал изучать программу spacer II для работы в готике 2 и меня интересует как определяеться зона видимости активных объектов (в игре готика 2) такие как грибы или меч (те которые можно положить в иневнтарь) а также персонажей. А точнее их имён.В общем всего того на чем появляеться имя когда герой на это смотрит. То есть если я немного отвернусь от персонажа то его жизни и его имя не показываеться. А если я поворачиваюсь к нему лицом или почти лицом то его имя выделяеться.

Вариант 1: За игроком весит вторая камера со своими размерами экрана которая рендерит только имена объектов? И все объекты которые попадают в область видимости этой второй камеры заносяться в переменную?

Вариант 2: А может для определения пространства в котором можно отображать имена персонажей используеться тригер в виде куба который наподобе конуса маленький у лица героя и большой в дали.

Вариант3: А может у героя есть массив с именем например "Objects" с переменными объектов в которые вносяться все активные персонажи и объекты и высвечиваеться имя того который ближе к центру экрана?

Объясните пожалуйста как это реализуеться или хотябы где найти эту модель игрока с камерой котораяк нему прикрепленна и всеми объектами которые прикрепленны к нему а также скриптами. Может я покапаюсь и сам пойму как он определяет чьё имя можно показывать а чьё нельзя
 

Vlad_Torop

Участник форума
Регистрация
2 Май 2014
Сообщения
870
Благодарности
499
Баллы
230
Проблема в ini-файле твоего мода. Там есть значение, которое отвечает за надписи при фокусе, по памяти не скажу, позже гляну и отредактирую пост.
Спасибо,нашел отличие.У меня в INIшнике shou_FocusMob=0 а надо =1
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
В общем всего того на чем появляеться имя когда герой на это смотрит. То есть если я немного отвернусь от персонажа то его жизни и его имя не показываеться. А если я поворачиваюсь к нему лицом или почти лицом то его имя выделяеться.
1. Здесь всем рулит функция фокуса, т.е. на кого ориентирован в данный момент фокус(куда смотрит ГГ), для того и обрабатывается все данные и приводится название/имя соответствующее инстанции скрипта модели НПс/воба/итема и т.д..
В темах скриптологии можно найти Тутор Вама, почитай там про работу функций АИ и все прочее что касается работы с Непесями в мире игры.
2. Нет.
3. У всего в игре что использует скрипты есть онисания в виде "Инстанции", там и будут прописаны имена, или переменные на отссылку к возможным именам..

Никакой камеры и прочего к модели Гг не прикреплено, все это реализуется движковыми функциями напрямую, и/или через скрипты игры..
 

SERG__ZV

Участник форума
Регистрация
17 Авг 2014
Сообщения
22
Благодарности
4
Баллы
155
1. Здесь всем рулит функция фокуса, т.е. на кого ориентирован в данный момент фокус(куда смотрит ГГ), для того и обрабатывается все данные и приводится название/имя соответствующее инстанции скрипта модели НПс/воба/итема и т.д..

Вот я и говорю как игра узнаёт на ком сфокусирован герой. Вы говорите что не с помощью триггера который прикреплён к герою. И я знаю что точно не с помощью RayCast (Лучей) потому что тогда бы обрабатывалься только тот на кого смотрит камера прямо. А геро видит область перед лицом примерно в 45 градусов. А если брать низ и верх то тут ограничение вообще только по дальности которая зависит от выбранного оружия.

В темах скриптологии можно найти Тутор Вама, почитай там про работу функций АИ и все прочее что касается работы с Непесями в мире игры.

А у него там кроме интеллекта (про который тоже интересно почитать вить его так нахваливают в готике)
написанно как игра решает кого игрок видит а кого нет?
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.367
Благодарности
7.815
Баллы
995
от я и говорю как игра узнаёт на ком сфокусирован герой.
Что из этого тебе не понятно?
В темах скриптологии можно найти Тутор Вама, почитай там про работу функций АИ и все прочее что касается работы с Непесями в мире игры.

Если вкратце, то есть такое определение в движке: Дальность видимости обзора АИ для того или иного события Непеся и т.д.. пока видит исполняются все фоновые и прочие функции, когда же Гг подошел в плотную к объекту/Нпс, то активируется функция фокуса, которая уже выводит всю прочую инфу конкретно об объекте/Непесе и т.д. на чем в данный момент сфокусирован взгляд Гг..

Посты перенес в тему чайников.
 
Сверху Снизу