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

    Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
    Удачи!
  • Друзья, доброго времени суток!
    Стартовал новый литературный конкурс от "Ордена Хранителей" - "Пираты Миртанского моря".
    Каждый может принять в нём участие и снискать славу и уважение, а в случае занятия призового места ещё и получить награду. Дерзайте
  • Дорогие друзья, год подходит к концу, и пришло время подвести его итоги и наградить достойных

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

Не стесняюсь спросить....

DreamGothic

Участник форума
Регистрация
10 Апр 2013
Сообщения
266
Благодарности
182
Баллы
210
Вообщем, продолжаю тупить...

А проблема такая теперь: вставляют значит свою текстуру через хекс эдитор, в готовую модельку, которую достал из готы, прописывая там ее название. Запаковываю все это счастье соблюдая все пути. Запускаю игру, одеваю доспех и бах, вылет, причем я даже не могу посмотреть на ошибку вылета, гота намертво виснет, приходиться вырубать ее через диспетчер...

В чем может быть проблема? По любому же что-то где-то не так... нуб ещё, звыняйте. :)
 

neromont


Модостроитель
Регистрация
12 Мар 2011
Сообщения
675
Благодарности
663
Баллы
245
Еще вопрос: поддерживает ли движок Готики в материалах какие нибудь другие текстуры кроме диффузной - specular, bump, normal? Вроде это стало уже стандартом в начале 2000-х...

нет. пиши плагин с помощью AST.
 

Orc Hunter


Модостроитель
Регистрация
12 Окт 2013
Сообщения
1.269
Благодарности
1.667
Баллы
305
Посмотрел вот этот Тутор и мне стало интересно, можно ли с его помощью установить нулевую стоимость всех предметов при торговле, если можно то чему должен при этом ровняться Trade_ChangeBuyMultiplier? Либо если кто знает, подскажите как в первой Готике открыть окно кражи через скрипты с помощью Икаруса?
 

Trazege

Участник форума
Регистрация
20 Фев 2008
Сообщения
1.760
Благодарности
1.394
Баллы
340
Кто нибудь пробовал заставить ГГ разговаривать сидя или лежа? Эта зараза постоянно встает, даже если ему меняешь флаг состояния.
 

ElderGamer


Модостроитель
Регистрация
16 Апр 2008
Сообщения
4.410
Благодарности
3.241
Баллы
525
Запускаю игру, одеваю доспех и бах, вылет, причем я даже не могу посмотреть на ошибку вылета, гота намертво виснет, приходиться вырубать ее через диспетчер...
Если модель скомпилена в Г2, например, а ты пытаешься предложить её движку Г1, то это не удивительно.

Думаю, правильнее всё-таки вносить правки на уровне asc, а после уже компилить модель.

Эта зараза постоянно встает, даже если ему меняешь флаг состояния.
Вставание и поворот собеседников друг к другу прописаны в состоянии ZS_Talk. С помощью специально введённых флагов можно кое-что изменить в этом порядке. В мод-фиксе, например, сейчас вводятся флаги запрета поворота к собеседнику. Если спутник бежит за ГГ и в какой-то момент инициирует диалог, то не всегда нужно, чтобы ГГ поворачивался к нему. Думаю, с помощью флагов можно запретить ГГ вставать, если он сидит, когда другой непись инициирует диалог. А вот с лежачим ГГ... Там ведь ещё анимации жестикуляции движок подсовывает. Хрен его знает, как оно работать будет. :confused:

Upd. Ещё ГГ встаёт, потому что это предписывается при инициации диалога с ним. Нет сейчас под рукой скриптов Г2, вот последовательность из Г1:
PERC_ASSESSPLAYER -> B_AssessSC -> B_CheckForImportantInfo -> B_FullStop -> AI_StandupQuick
 
Последнее редактирование:

Trazege

Участник форума
Регистрация
20 Фев 2008
Сообщения
1.760
Благодарности
1.394
Баллы
340
Если модель скомпилена в Г2, например, а ты пытаешься предложить её движку Г1, то это не удивительно.

Думаю, правильнее всё-таки вносить правки на уровне asc, а после уже компилить модель.


Вставание и поворот собеседников друг к другу прописаны в состоянии ZS_Talk. С помощью специально введённых флагов можно кое-что изменить в этом порядке. В мод-фиксе, например, сейчас вводятся флаги запрета поворота к собеседнику. Если спутник бежит за ГГ и в какой-то момент инициирует диалог, то не всегда нужно, чтобы ГГ поворачивался к нему. Думаю, с помощью флагов можно запретить ГГ вставать, если он сидит, когда другой непись инициирует диалог. А вот с лежачим ГГ... Там ведь ещё анимации жестикуляции движок подсовывает. Хрен его знает, как оно работать будет. :confused:

Upd. Ещё ГГ встаёт, потому что это предписывается при инициации диалога с ним. Нет сейчас под рукой скриптов Г2, вот последовательность из Г1:
PERC_ASSESSPLAYER -> B_AssessSC -> B_CheckForImportantInfo -> B_FullStop -> AI_StandupQuick


Нет ты меня немного не понял...гг уже в диалоге с НПС...между фразами его можно усадить на задницу но при следующей фразе он все равно встанет.
 

ElderGamer


Модостроитель
Регистрация
16 Апр 2008
Сообщения
4.410
Благодарности
3.241
Баллы
525
но при следующей фразе он все равно встанет
Понятно. Ты пытаешься обмануть функцию движка. Если собеседник держит в руках оружие, анимации жестикуляции не воспроизводятся. Может, и вскакивания в боевом режиме не будет? :oops:
 

Trazege

Участник форума
Регистрация
20 Фев 2008
Сообщения
1.760
Благодарности
1.394
Баллы
340
Понятно. Ты пытаешься обмануть функцию движка. Если собеседник держит в руках оружие, анимации жестикуляции не воспроизводятся. Может, и вскакивания в боевом режиме не будет? :oops:

Хмм...интересная мысль. Только каким образом я смогу в диалоге поменять гг FMODE не вынимая оружия? Надо попробовать Npc_SetToFistMode
 

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.301
Благодарности
4.641
Баллы
625
создай новый экстернал вопроизведения фразы и привяжи в нему ивент не сбрасывающий состояние нпс на эмбиент..
и да, по 003 я сегодня свободен.
 

Trazege

Участник форума
Регистрация
20 Фев 2008
Сообщения
1.760
Благодарности
1.394
Баллы
340
Эх...я тут завис со стрейфом. :( Пришла мысль мальца переназначить кнопки стрейфа и сделать его нецикличным. А обычный стрейф превратить в нормальное боковое парирование ударов.
 

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.301
Благодарности
4.641
Баллы
625
хукай метод в хуман контроле и переназначай условия.....
 

Fase

Участник форума
Регистрация
12 Янв 2011
Сообщения
208
Благодарности
3
Баллы
170
У меня есть диалог:
Код:
func void DIA_Xardas_TODO_Info()
{
    AI_Output(other,self,"DIA_Xardas_TODO_15_12");    //Ну что же - надо, так надо.
    Log_CreateTopic(TOPIC_INNOSEYE,LOG_MISSION);
    Log_SetTopicStatus(TOPIC_INNOSEYE,LOG_Running);
    B_LogEntry(TOPIC_INNOSEYE,"В городе Хоринис расположилась группа паладинов. Они владеют могущественным артефактом: 'Глаз Инноса'. Его власть должна помочь нам против угрозы драконов. Я должен убедить паладинов поддержать нас в этом деле.");
    Log_CreateTopic(TOPIC_ORCTEMPLE,LOG_MISSION);
    Log_SetTopicStatus(TOPIC_ORCTEMPLE,LOG_Running);
    B_LogEntry(TOPIC_ORCTEMPLE,"Ксардас сказал, что кроме Глаза Инноса в борьбе против драконов мне также может понадобится могущественный древний клинок УРИЗЕЛЬ, коим я однажды сразил Спящего. Только его мощь способна как-то более или менее справиться с ними. Видимо, мне следует при первой же возможности, наведаться в Храм Спящего, где и должен был остаться тот легендарный меч.");
    Info_ClearChoices(DIA_Xardas_TODO);
};

Здесь, что для меня важно вызывается два раза функция B_LogEntry
Вот она сама:
Код:
func void B_LogEntry(var string topic,var string entry)
{
    Log_AddEntry(topic,entry);
    PrintScreen(PRINT_NewLogEntry,-1,YPOS_LOGENTRY,FONT_ScreenSmall,2);
    PrintScreen(topic,-1,-1,FONT_ScreenSmall,2);
    Snd_Play("LogEntry");
};

Я сделал, чтобы помимо записи PRINT_NewLogEntry(ваш дневник дополнен) появлялось название квеста
Код:
PrintScreen(topic,-1,-1,FONT_ScreenSmall,2);

Если функция B_LogEntry несколько раз вызывается, то происходит накладывание названий квеста. Как можно исправить это?
 

Fase

Участник форума
Регистрация
12 Янв 2011
Сообщения
208
Благодарности
3
Баллы
170
Можно поменять координаты строк.Как пример:
1)PrintScreen(topic,-1,-1,FONT_ScreenSmall,2);
2)PrintScreen(topic,-1,40,FONT_ScreenSmall,2);

Нет, ты не совсем понял. Когда за один диалог вызывается сразу два раза функция B_LogEntry. (пример такого диалога выше)
Из-за этого и происходит наложение квестов. Твой вариант добавит еще эти наложения только строчкой выше.
 

ElderGamer


Модостроитель
Регистрация
16 Апр 2008
Сообщения
4.410
Благодарности
3.241
Баллы
525
Если функция B_LogEntry несколько раз вызывается, то происходит накладывание названий квеста. Как можно исправить это?
Можно, например, ввести глобальную переменную, значение которой будет устанавливаться в инстанции диалога и означать количество выводимых на экран строк текста. В функции B_LogEntry значение этой переменной нужно учитывать при выборе вертикальной координаты и уменьшать на единицу. Результат вывода при значении вертикальной координаты "49" или "50" будет приблизительно соответствовать выводу при значении "-1".
 

DreamGothic

Участник форума
Регистрация
10 Апр 2013
Сообщения
266
Благодарности
182
Баллы
210
Вообщем такая небольшая проблемка...

По работал над текстурой, все сохранил в фотошопе.
Далее, перевожу ее через гоман в тех, с настройками "Самая большая карта" "DXT1".
Запаковываю вдф-ку...

Ну и в игре текстура норм, все работает, но вот она мерцает... особенно при отдалении, можно как-то вылечить это?:)
 

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.334
Баллы
315
компилить текстуры игрой.
 

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.334
Баллы
315
блин, вот объясните почему все такие сложные? Просто кидаешь текстуру в папку текстур, удаляешь твою откомпиленую врубаешь игру, и достаешь тот предмет где она висит, если в мире просто приходишь туда где эта текстура, все.
 

DreamGothic

Участник форума
Регистрация
10 Апр 2013
Сообщения
266
Благодарности
182
Баллы
210
блин, вот объясните почему все такие сложные? Просто кидаешь текстуру в папку текстур, удаляешь твою откомпиленую врубаешь игру, и достаешь тот предмет где она висит, если в мире просто приходишь туда где эта текстура, все.
Ага, понабежало нубасов всяких... спасибо!
 
Сверху Снизу