Новости Релиз Of Ash and Steel состоится 6 ноября
  • 8.912
  • 12
Of Ash and Steel: атмосферный экшен выходит 6 ноября 6 ноября станет важной датой для поклонников сложных и атмосферных игр - именно в этот день состоится релиз долгожданного проекта Of Ash and...
Новости В Of Ash and Steel начался закрытый плейтест
  • 12.399
  • 12
Разработчики "Русской Готики" объявили о старте закрытого плейтеста. Если вы оставляли заявку на участие, не забудьте проверить электронную почту или посмотреть свою библиотеку - возможно игра уже...
Новости Анонсирован Atomic Heart II
Новости Анонсирован ремастер Final Fantasy Tactics
  • 6.503
  • 2
Культовая пошаговая тактическая RPG от Square Enix получит второе дыхание. На проходящей выставке State of Play, где анонсируются игры для Play Station, состоялся анонс ремастера Final Fantasy...

Г2 НБ: добавление дополнительных свойств / урона оружию

davlat

Новичок
Участник форума
Регистрация
3 Окт 2022
Сообщения
11
Реакции
3
Баллы
7
Лучшие ответы
0
#1
Хочу добавить мечу урон по призракам, за основу был взят пост Решено - Редактирование параметров оружия. Возможно-ли ?

Оригинальные характеристики меча:

Код:
instance itmw_1h_ginnoksword(c_item) {
    name = "Меч Безумного паладина";
    cond_atr[2] = atr_strength;
    cond_value[2] = 500;
    damagetotal = 430;
    damagetype = dam_edge;
    description = name;
    flags = item_swd | item_mission;
    inv_animate = 1;
    mainflag = item_kat_nf;
    material = mat_metal;
    on_equip = equip_1h_heavy_ginnok;
    on_unequip = unequip_1h_heavy_ginnok;
    range = 120;
    value = 3000;
    visual = "ItMw_RuneSword.3DS";
    visual_change = name_onehanded_slash_legend;
    text = "Рубящий урон: 430";
    text[1] = "Длина оружия: 120 | Одноручное";
    text[3] = "Пробивание брони: 25%";
    text[2] = "Требуется  силы: 500";
    text[4] = "Дополнительный урон по нежити и демонам...";
    text[5] = name_value;
    count[5] = value;
    rx_setweightvalue(itmw_1h_ginnoksword, rx_w_meleeweaponindex, 5);
    rx_setweightvalue(itmw_1h_ginnoksword, rx_w_undeaddamage, 300);
    rx_setweightvalue(itmw_1h_ginnoksword, rx_w_demondamage, 300);
};
Подсмотрел что у мечей с уронам по призракам есть вот такая строка:
Код:
rx_setweightvalue(itmw_1h_sigil, rx_w_ghostdamage, 200);
Т.е указывается id предмета, свойство, значение урона. По аналогии добавляю это же свойство мечу безумного паладина изменив id:

Код:
instance itmw_1h_ginnoksword(c_item) {
    name = "Меч Безумного паладина";
    cond_atr[2] = atr_strength;
    cond_value[2] = 500;
    damagetotal = 430;
    damagetype = dam_edge;
    description = name;
    flags = item_swd | item_mission;
    inv_animate = 1;
    mainflag = item_kat_nf;
    material = mat_metal;
    on_equip = equip_1h_heavy_ginnok;
    on_unequip = unequip_1h_heavy_ginnok;
    range = 120;
    value = 3000;
    visual = "ItMw_RuneSword.3DS";
    visual_change = name_onehanded_slash_legend;
    text = "Рубящий урон: 430";
    text[1] = "Длина оружия: 120 | Одноручное";
    text[3] = "Пробивание брони: 25%";
    text[2] = "Требуется  силы: 500";
    text[4] = "Дополнительный урон по нежити и демонам...";
    text[5] = name_value;
    count[5] = value;
    rx_setweightvalue(itmw_1h_ginnoksword, rx_w_meleeweaponindex, 5);
    rx_setweightvalue(itmw_1h_ginnoksword, rx_w_undeaddamage, 300);
    rx_setweightvalue(itmw_1h_ginnoksword, rx_w_demondamage, 300);
    rx_setweightvalue(itmw_1h_ginnoksword, rx_w_ghostdamage, 300);  // добавленная строчка
};
Сохраняю файл в autorun папку, запускаю игру и проверяю на призраке (вставив через марвин - insert ghost)
но урона нет, что не так?
 

Divik

Герой
Участник форума
Регистрация
21 Авг 2022
Сообщения
5.052
Реакции
1.337
Баллы
311
Лучшие ответы
33
#2
Я вообще не программист. Так что тут ничего не скажу.
Тот ли меч именно берет ГГ, может из папки авторан не берет?
Добавь в текст 4 строчку про призраков. Посмотри, появился ли добавленный текст на мече, ну значит он и есть.
 

Liker

Демиург
Команда форума
Редактор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
21 Фев 2016
Сообщения
29.658
Реакции
27.306
Баллы
1.496
Лучшие ответы
1.081
#3
@davlat, это функция из мода НБ, а точнее экспериментальных скриптов. Это будет работать только там.
 
Автор
Автор
D

davlat

Новичок
Участник форума
Регистрация
3 Окт 2022
Сообщения
11
Реакции
3
Баллы
7
Лучшие ответы
0
#4
это функция из мода НБ, а точнее экспериментальных скриптов. Это будет работать только там.
Не очень понял, можно чуть подробнее? почему на одном оружии это работает, на другом нет?

Тот ли меч именно берет ГГ, может из папки авторан не берет?
Да, это тот меч. Тексты, цена, базовые характеристики меняются.
 

Liker

Демиург
Команда форума
Редактор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
21 Фев 2016
Сообщения
29.658
Реакции
27.306
Баллы
1.496
Лучшие ответы
1.081
#5
@davlat, возможно часть оружия где-то еще прописана.
rx_setweightvalue - это фукция из плагина "экспериментальные скрипты". Так-то она не используется.
 

Haart

Живая легенда
Команда форума
Редактор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
3 Дек 2012
Сообщения
6.716
Реакции
4.037
Баллы
781
Лучшие ответы
413
#6
@davlat, в обычном нб урон для призраков прописывается не в инстанции оружия, а в функции RX_WeaponDamage. Там можно посмотреть и сделать по аналогии.
 
Автор
Автор
D

davlat

Новичок
Участник форума
Регистрация
3 Окт 2022
Сообщения
11
Реакции
3
Баллы
7
Лучшие ответы
0
#7
rx_setweightvalue - это фукция из плагина "экспериментальные скрипты". Так-то она не используется.
понял, вот это и смущало

в обычном нб урон для призраков прописывается не в инстанции оружия, а в функции RX_WeaponDamage
нашел, есть такое, да
спасибо за подсказку, буду разбираться
 
Автор
Автор
D

davlat

Новичок
Участник форума
Регистрация
3 Окт 2022
Сообщения
11
Реакции
3
Баллы
7
Лучшие ответы
0
#8
@Haart подскажи пожалуйста если знаешь где / как считается пробитие брони и работает ли это вообще
 

Haart

Живая легенда
Команда форума
Редактор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
3 Дек 2012
Сообщения
6.716
Реакции
4.037
Баллы
781
Лучшие ответы
413
#9
@davlat, оно не прописано в скриптах, только в dll. Т.е. что-то взять и добавить нельзя.
А считается просто: при ударе, перед тем как учитывать броню противника, это самую броню штрафуют на необходимый процент. После учета восстанавливают. Все.
 
Автор
Автор
D

davlat

Новичок
Участник форума
Регистрация
3 Окт 2022
Сообщения
11
Реакции
3
Баллы
7
Лучшие ответы
0
#10
Интересно, спасибо.
 
Сверху Снизу