Важно 9 мая - День Победы - 80-летия Великой Победы!
  • 1.067
  • 5
Поздравляю всех, кому искренне небезразличен этот день! С днём Великой Победы!
Новости Анонс The Elder Scrolls VI уже этим летом?
  • 734
  • 2
По данным инсайдера eXtas1s, Bethesda может впервые показать The Elder Scrolls VI летом 2025 года Обсуждается возможность анонса игры на одной из крупных презентаций Xbox - в июне или августе...
Новости Of Ash and Steel: разработка в цифрах
  • 639
  • 0
На днях авторы игры Of Ash and Steel поблагодарили игроков за поддержку и положительные отклики, а также поделились цифрами во время разработки. В игре будут: 300+ квестов; 30 000+ строк...
Новости Clair Obscur: Expedition 33 – новая ролевая игра, ломающая стереотипы
  • 892
  • 3
Clair Obscur: Expedition 33 – уникальная ролевая игра, которая могла появиться только у инди-разработчика Раз в год Художница просыпается и рисует на Монолите. Выводит свое проклятое число. И...

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

Alex1

Избранник богов
Команда форума
Модератор раздела
Редактор раздела
Модостроитель
 
Почётный пользователь
Участник форума
Регистрация
22 Янв 2014
Сообщения
11.462
Реакции
6.033
Баллы
976
Лучшие ответы
418
@WoOliN, подсчеты защит происходят автоматически (где-то в движке).
Если свойства предметов прописаны корректно, эффект будет даже без появления информации в меню свойств ГГ.

Само отображение берется из массива навыков и перехватывается в MENU.DAT
Обычно под "скриптами" подразумевают содержимое GOTHIC.dat, которое раскрываем в программе и добавляем предметы, диалоги и прочее.
При распаковке мода рядом с GOTHIC.dat есть MENU.DAT. Его тоже декомпилируем в ГС, смотрим описания каждой строчки, правим то, что не так. В том числе, указываем номер навыка внутри массива, который должен отображаться.
Если это новый навык, то он выводится отдельно (так сделано в В1 с выносливостью и интеллектом).

Потом компилируем изменения MENU.DAT и вставляем в мод.

Если все это уже сделано, а добавка Crushing в кольцо не отображается в меню, посмотри, как Crushing добавлен в свойства брони. Там две строчки: первая (вверху) - значения, которые нужны игре. Вторая (внизу) - текст, который выводится игроку. Если кольцам добавить только текст, не меняя значений для игры, то в результате будет только картинка для игрока, без реальных свойств предмета.
 

WoOliN

Герой
Команда форума
Модератор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
5 Сен 2012
Сообщения
5.741
Реакции
3.514
Баллы
776
Лучшие ответы
428
Ладно ... ещё покопаюсь в MENU.DAT
Пятый тип защиты в панель вывел, но где-то посеял графу его подсчётов ... так что напротив Edge пустое поле, вместо циферок.
 

Alex1

Избранник богов
Команда форума
Модератор раздела
Редактор раздела
Модостроитель
 
Почётный пользователь
Участник форума
Регистрация
22 Янв 2014
Сообщения
11.462
Реакции
6.033
Баллы
976
Лучшие ответы
418
напротив Edge пустое поле, вместо циферок
Скорее всего, копи-пастом сделал и убрал указатель на массив.
Насколько помню, там по очереди идет отображение.
Навык 14 - такая-то строчка
Навык 15 - такая-то строчка
С 16 в НВ вроде пусто - но все навыки уже забили, если это мод на основе В1

Эти же строчки в обычных скриптах ищи в списке

const int PROT_BARRIER = 0;
const int PROT_BLUNT = 1;
const int PROT_EDGE = 2;
const int PROT_FIRE = 3;
const int PROT_FLY = 4;
const int PROT_MAGIC = 5;
const int PROT_POINT = 6;
const int PROT_FALL = 7;
const int PROT_INDEX_MAX = 8;
 

WoOliN

Герой
Команда форума
Модератор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
5 Сен 2012
Сообщения
5.741
Реакции
3.514
Баллы
776
Лучшие ответы
428
Если брать обычную Готику2 с Аддоном.
У каждого защитного предмета стандартно 5 видов защиты
BLUNT
EDGE
POINT
FIRE
MAGIC

Цифровые значения BLUNT и EDGE у защитных предметов равны и в *Панель параметров персонажа* выводится только значение BLUNT, указанное, как ЗАЩИТА от оружия.


А я делаю защитным предметам - значение BLUNT поменьше, чем значение EDGE (например кольцо имеет 5 BLUNT и 10 EDGE защиты)

И хочу сделать в *Панели параметров персонажа* отдельное и корректное отображение суммарной BLUNT защиты и отдельное и корректное отображение суммарной EDGE защиты.
На данный момент у меня не получается сделать циферки у EDGE, как это видно на скрине выше.

Вот именно с этим мне и нужна помощь )
 

Alex1

Избранник богов
Команда форума
Модератор раздела
Редактор раздела
Модостроитель
 
Почётный пользователь
Участник форума
Регистрация
22 Янв 2014
Сообщения
11.462
Реакции
6.033
Баллы
976
Лучшие ответы
418
@WoOliN, просто так в меню защит ГГ добавить ничего не получится, так как размерность массива там 4 строчки.

Глянь, как сделаны в В1 или любом моде на него параметры Интеллект и Выносливость в меню ГГ.
Создаешь новый навык, привязываешь к его отображению защиту BLUNT, а старую EDGE не трогаешь - она вроде именно с EDGE и считывает данные. (Если я ошибся - и она считывает с BLUNT - сделай наоборот)

Этот навык размещаешь рядом с другими защитами в меню (если нужно - сдвигаешь их)
 

WoOliN

Герой
Команда форума
Модератор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
5 Сен 2012
Сообщения
5.741
Реакции
3.514
Баллы
776
Лучшие ответы
428
привязываешь к его отображению защиту BLUNT
Вот тут подробнее )
Я расковырял несколько Menu_Status.d из других модов, но так и не понял как там проходит привязка к конкретным параметрам даже у стандартных навыков.
 

Yelawolf

Живая легенда
Модостроитель
Почётный пользователь
Участник форума
Регистрация
29 Янв 2012
Сообщения
6.785
Реакции
2.195
Баллы
661
Лучшие ответы
2
@WoOliN,
Если у тебя остался доступ в закрытый раздел по Контент-моду, то там мы с Хаартом реализовывали вывод все 5 типов защит в меню статус игрока. Глянь, там скрипты лежат ;)
 

WoOliN

Герой
Команда форума
Модератор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
5 Сен 2012
Сообщения
5.741
Реакции
3.514
Баллы
776
Лучшие ответы
428
Чёт не найду там.
В какой теме лежит ?


В общем мне нужно сообразить следующее:
например суммарная POINT-защита в Г2НВ - правильно и красиво выводится в графу Piercing на Панели параметров персонажа (скрин выше по теме)

Как именно в Menu_Status.d (или где-то там ещё) привязана
именно суммарная POINT-защита - именно к графе Piercing ?

items[24] = "MENU_ITEM_ARMOR_2_TITLE";
items[29] = "MENU_ITEM_ARMOR_2";

instance MENU_ITEM_ARMOR_2_TITLE(C_MENU_ITEM_DEF)
{
posx = STAT_A_X1;
posy = STAT_ARM_Y + (STAT_DY * 2);
text[0] = "Piercing";
fontname = STAT_FONT_DEFAULT;
flags = flags & ~IT_SELECTABLE;
};

instance MENU_ITEM_ARMOR_2(C_MENU_ITEM_DEF)
{
posx = STAT_A_X3;
posy = STAT_ARM_Y + (STAT_DY * 2);
fontname = STAT_FONT_DEFAULT;
flags = flags & ~IT_SELECTABLE;
};

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

WoOliN

Герой
Команда форума
Модератор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
5 Сен 2012
Сообщения
5.741
Реакции
3.514
Баллы
776
Лучшие ответы
428
В общем я разобрался и реализовал.
Парой туманных намёков помог товарищ unknown111 на форуме worldofplayers.
Несколько геморное дело, особенно для полного нуба в скриптинге, но теперь всё работает.
 

TraZag

Полубог
Команда форума
Модератор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
6 Окт 2012
Сообщения
13.078
Реакции
11.531
Баллы
1.071
Лучшие ответы
5
На самом деле в классе их 8 - 8 параметров защиты, просто некоторые не используются... столько же и видов урона... Интересно будет ли просчитывать урон движок при наненсении урона типа DAM_BARRIER
 
Сверху Снизу