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

    Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
    Удачи!
  • Друзья, доброго времени суток! Спешите принять участие в конкурсе "Таинственные миры" 2024!
    Ждем именно вас!

    Ссылка на конкурсную тему - тык

Gor

Участник форума
Регистрация
26 Дек 2009
Сообщения
977
Благодарности
543
Баллы
245
А дайте ссылочку на русские скрипты для Г1.
Декомпиляция снежковских скриптов Соурсером у меня не получилась в своё время. Слишком много ошибок.
Только что декомпилировал снежковские скрипты за пару минут GothicSourcer'ом 3.14.
 

Вложения

  • SolGothicSnowball.7z
    1,1 MB · Просмотры: 87

ElderGamer


Модостроитель
Регистрация
16 Апр 2008
Сообщения
4.331
Благодарности
3.178
Баллы
525
Гм, возможно, память меня подвела, и проблема была в том, что проект не получалось обратно скоипилировать Соурсером по причине огромного количества ошибок. Сейчас то я знаю, что компилить скрипты можно и движком игры, а тогда не знал. :)
 

Dimus

★★★★★★★★★
Супермодератор
Регистрация
19 Июл 2010
Сообщения
5.562
Благодарности
4.153
Баллы
915
Декомпиляция GOTHIC.DAT из локализации Snowball даёт всего лишь 1 ошибку в скрипте DIA_ORG_801_Lares.d:
gorn.aivar[AIV_FINDABLE] == TRUE;
Зато при компиляции вылезают аж 64 ошибки вида "Функция должна возвращать значение" из-за бардака со значениями, возвращаемыми многими функциями (void или int), причём этот бардак пропускается движком и спейсером.
 

Dimus

★★★★★★★★★
Супермодератор
Регистрация
19 Июл 2010
Сообщения
5.562
Благодарности
4.153
Баллы
915
Это не сложно поправить при желании.
ЗЫ gorn.aivar[AIV_FINDABLE] == TRUE; я сразу поправил
Ясен пень, что эта ошибка правится без проблем. Но не так-то просто исправить ошибки компиляции: приходится дополнительно анализировать, где надо поставить дополнительный return, а где изменить int на void.
 

Valik

Участник форума
Регистрация
30 Ноя 2015
Сообщения
8
Благодарности
0
Баллы
150
Спасибо. До этого я случайно удалил ou.bin и думал, что скрипты только отдельно берутся) Сейчас разобрался с декомпиляцией. 60 ошибок исправил добавлением "return 0;" в конце всех этих функций. Уже наслаждаюсь процессом модинга.

Другой вопрос. Игра использует иерархию папок, в которой находятся скрипты - или скрипты ищутся по всем папкам внутри Scripts/, и я могу свободно менять имена файлов .d и перетасовывать по своим папкам?
 
Последнее редактирование модератором:

hell9999

Участник форума
Регистрация
12 Апр 2008
Сообщения
2.048
Благодарности
1.163
Баллы
340
Другой вопрос. Игра использует иерархию папок, в которой находятся скрипты - или скрипты ищутся по всем папкам внутри Scripts/, и я могу свободно менять имена файлов .d и перетасовывать по своим папкам?
Добавлять свои файлы можно без ограничений. Только при компиляции все равно все новые файлы будут добавлены в папку _misc. Стандартные файлы лучше не переименовывать, особенно системные. Однако переносить оттуда нужные скрипты в свои файлы, для удобства проекта - никто не воспрещает.
 

Valik

Участник форума
Регистрация
30 Ноя 2015
Сообщения
8
Благодарности
0
Баллы
150
Раскройте плз великую тайну, что значат префиксы в названиях функций "В_...", "С_..." и "ZS_..." ?
 
Последнее редактирование:

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.371
Благодарности
7.802
Баллы
995
Раскройте плз великую тайну, что значат префиксы в названиях скрипт-файлов "В_...", "С_..." и "ZS_..." ?
Раскрываем глаза и смотрим что содержится в этих файлах, вот и вся великая тайна...
 

Valik

Участник форума
Регистрация
30 Ноя 2015
Сообщения
8
Благодарности
0
Баллы
150
Раскрываем глаза и смотрим
Если вашему величеству лень отвечать - то мог бы ничего не писать. Я верю, что ты крут, но мне, к сожалению, вообще не очевидно, что значит сокращение ZS в "ZS_AssessSurprise".
Плз расшрифруйте двумя словами, буду благодарен.
 

MEG@VOLT

★★★★★★★★★
ТехАдмин
Регистрация
24 Мар 2006
Сообщения
9.160
Благодарности
6.141
Баллы
1.565
Если вашему величеству лень отвечать - то мог бы ничего не писать. Я верю, что ты крут, но мне, к сожалению, вообще не очевидно, что значит сокращение ZS в "ZS_AssessSurprise".
Плз расшрифруйте двумя словами, буду благодарен.
Возможно ошибаюсь?!
В_ - постоянно работающие функции
С_ - фенкции срабатывания в определенный момент
ZS_ - распорядок дня.

Но, как я только не обзывал свои функции - они все работали. И распорядки дня, и постоянные, и срабатывали в определенные момент...
 
Последнее редактирование:

hell9999

Участник форума
Регистрация
12 Апр 2008
Сообщения
2.048
Благодарности
1.163
Баллы
340
Но, как я только не обзывал свои функции - они все работали. И распорядки дня, и постоянные, и срабатывали в определенные момент...
Префиксы нужны в основном для эстетики - чтобы программисту было удобней в проекте ориентироваться и всего лишь. А так, да - можно все вообще в одну папку свалить и работать все равно будет.
 

НастасьСанна

Участник форума
Регистрация
6 Дек 2012
Сообщения
351
Благодарности
521
Баллы
325
Пираньи приняли такую систему обозначений:
В_ - функции, возвращающие void (ничего), т.е. что-то делают, но не выдают результат. Например, B_GiveTradeInv - заполнить инвентарь торговца.
С_ - функции, возвращающие int или еще что-нибудь, т.е. они что-то делают (проверяют, вычисляют) и сообщают результат проверки/вычисления. Например, C_NpcIsGateGuard - сообщает, является ли персонаж охранником.
ZS_ - состояние, в котором может находиться NPC (атакует, стоит, спит, заморожен, играет на лютне, следует за ГГ...). Состоит из 3-х частей ZS_Имя (что сделать сначала), ZS_Имя_Loop (что делать в процессе и когда заканчивать) и ZS_Имя_End (что делать в конце).
TA_ - распорядки дня на основе ZS_. Не все ZS_ становятся распорядками, например ZS_Attack - атаковать, не может быть распорядком дня, а только временным состоянием, а TA_Saw (пилить бревно) соответствует ZS_Saw (само соответствие прописывается в TA.d).
G_ - встроенные функции, нельзя удалять и переименовывать. Например, G_CanNotUse - что делать, если ГГ не может использовать mob-объект.

В принципе, свои функции можно называть как угодно, но так проще ориентироваться. + Если не использовать ZS_ для состояний, то не будет работать цикл.
 

костян 1997

Участник форума
Регистрация
7 Ноя 2012
Сообщения
23
Благодарности
0
Баллы
155
К какому Vob-уровню относятся 3 d модели зданий, кораблей и т.д?
 

hell9999

Участник форума
Регистрация
12 Апр 2008
Сообщения
2.048
Благодарности
1.163
Баллы
340
К какому Vob-уровню относятся 3 d модели зданий, кораблей и т.д?
Конкретизируйте вопрос. Если имеется в виду, являются ли дома и корабли вобами - ответ - нет. Это все часть локации. Достаточно открыть любой зен в спейсере, чтобы в этом убедиться.
 

костян 1997

Участник форума
Регистрация
7 Ноя 2012
Сообщения
23
Благодарности
0
Баллы
155
Конкретизируйте вопрос. Если имеется в виду, являются ли дома и корабли вобами - ответ - нет. Это все часть локации. Достаточно открыть любой зен в спейсере, чтобы в этом убедиться.
Именно это я и имел в виду. Просто в данный момент занимаюсь модернизацией карты Яркендара, а так же одновременно учусь. Так вот, при объединении Mesh с Zen'ом случается следующее: корабль оказывается в горах, а я естественно не знаю, как его перенести к морю.
 

hell9999

Участник форума
Регистрация
12 Апр 2008
Сообщения
2.048
Благодарности
1.163
Баллы
340
Именно это я и имел в виду. Просто в данный момент занимаюсь модернизацией карты Яркендара, а так же одновременно учусь. Так вот, при объединении Mesh с Zen'ом случается следующее: корабль оказывается в горах, а я естественно не знаю, как его перенести к морю.
Зены и меши - разные вещи. Операция merge производится только с зенами. Если редактирование производится в 3д редакторе, то сохранять меши нужно в мировых координатах. При редактировании меша в спейсере сохранение меша локации автоматом производится в мировых координатах.
Зы: Откуда корабль в яркендаре? В Г2 оригинале всего один корабль, и тот в хоринисе стоит.
 

MEG@VOLT

★★★★★★★★★
ТехАдмин
Регистрация
24 Мар 2006
Сообщения
9.160
Благодарности
6.141
Баллы
1.565
Откуда корабль в яркендаре
За то там есть разбитая волга)))
В Г2 оригинале всего один корабль, и тот в хоринисе стоит.
Я так понял, костян объединяет корабль из хориниса с яркендаром.
Так вот, при объединении Mesh с Zen'ом случается следующее: корабль оказывается в горах
А вот тут уже тебе понадобится 3Д редакторы. Какие именно - выбирай сам. Там уже и подстраивай свои корабли с землями.
 

Ur-tRall

Участник форума
Регистрация
16 Май 2009
Сообщения
4.102
Благодарности
2.122
Баллы
475
Не знаю куда ещё писать, но вопрос действительно на чаёк сахарком. Установил Возвращение, а старый ини файл выкинул, заменив его другим, теперь хочу вернуть старый ини и захотел его скачать с этого сайта, но нигде не нашёл оригинального файла Gothic.ini для Г2 НВ. Очень бы хотелось видеть где-нибудь ярко выделенную тему или раздел, где бы можно было скачивать различные ини файлы, решения проектов Готики 1, Готики 2, возможно текстуры в формате тга и тех и другие полезные материалы. Но чтобы без переходов на версии ВОГа 2005 годов и другие скрытые базы. Если над, перенесите пост в соответствующубю тему.
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.371
Благодарности
7.802
Баллы
995

Вложения

  • Gothic.7z
    6,7 KB · Просмотры: 69
Сверху Снизу