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

    Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
    Удачи!
    Скрыть объявление
  2. Форум аддона "Возвращение" 2.0:
    — Обсудить игру, почитать о прохождениях и/или разрешить свои вопросы по игре вы можете в одной из тем одноименного форума. Посетить...
    — Прочитать историю изменения и/или скачать последнюю версию аддона "Возвращение", вы можете на страницах наших ресурсов. Скачать...
    Скрыть объявление

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

Тема в разделе "Модостроение", создана пользователем Xentar, 25 фев 2008.

Модераторы: Marvіn, MEG@VOLT
  1. ElderGamer

    ElderGamer
    Модостроитель

    Регистрация:
    16 апр 2008
    Сообщения:
    1.507
    Благодарности:
    928
    Баллы:
    275
    Гм, в Г2 у факелов тоже, вроде бы, название в фокусе не выводится. Как тебе удалось получить название в фокусе?
     
  2. neromont

    neromont
    Модостроитель

    Регистрация:
    12 мар 2011
    Сообщения:
    305
    Благодарности:
    295
    Баллы:
    220
    Пол:
    Мужской
    Закинул в категорию одноручного оружия.
     
  3. ElderGamer

    ElderGamer
    Модостроитель

    Регистрация:
    16 апр 2008
    Сообщения:
    1.507
    Благодарности:
    928
    Баллы:
    275
    Возможно, это как-то связано с исправлением следующего глюка. Когда руна используется, она берётся в слот руки, но 3ds-визуал заменяется на эффект. В Г1, при получении магом повреждения, кратковременно это положение вещей сбрасывается. Эффект исчезает, а визуал снова становится 3ds. В Г2НВ такого не наблюдается.
     
  4. neromont

    neromont
    Модостроитель

    Регистрация:
    12 мар 2011
    Сообщения:
    305
    Благодарности:
    295
    Баллы:
    220
    Пол:
    Мужской
    Я думал что это связанно с визуальными эффектами, так как свойство применяется для подобных предметов.

    Открыть спойлер

    instance ItRw_Addon_FireBow(C_Item)
    {
    name = "Огненный лук";
    mainflag = ITEM_KAT_FF;
    flags = ITEM_BOW;
    material = MAT_WOOD;
    value = Value_FireBow;
    damageTotal = Damage_FireBow;
    damagetype = DAM_MAGIC;
    munition = ItRw_Addon_FireArrow;
    wear = WEAR_EFFECT;
    effect = "SPELLFX_FIREBOW";
    cond_atr[2] = ATR_DEXTERITY;
    cond_value[2] = Condition_FireBow;
    visual = "ItRw_Bow_H_04.mms";
    description = name;
    text[2] = NAME_Damage;
    count[2] = damageTotal;
    text[3] = NAME_Dex_needed;
    count[3] = cond_value[2];
    text[5] = NAME_Value;
    count[5] = value;
    };


    Но опять же визуальный эффект никуда не денется, если удалить WEAR_EFFECT.
     
  5. ElderGamer

    ElderGamer
    Модостроитель

    Регистрация:
    16 апр 2008
    Сообщения:
    1.507
    Благодарности:
    928
    Баллы:
    275
    Кстати, предметы с ZEN-визуалом имеют ещё одну особенность, по крайней мере, факелы. Они удаляются движком из мира или, возможно, проваливаются под текстуры. Если сохраниться с горящим факелом в руках в Г2НВ, после загрузки сохранения факела в руке не будет. Если бросить горящий факел на землю, выйти из локации и снова в неё зайти, факела на месте не окажется.
     
  6. Saturas

    Saturas
    Модостроитель

    Регистрация:
    11 фев 2009
    Сообщения:
    1.898
    Благодарности:
    609
    Баллы:
    275
    Пол:
    Женский
    Удаляются из мира факелы.
     
  7. ElderGamer

    ElderGamer
    Модостроитель

    Регистрация:
    16 апр 2008
    Сообщения:
    1.507
    Благодарности:
    928
    Баллы:
    275
    По инстанции удаляются или по флагам?
     
  8. Saturas

    Saturas
    Модостроитель

    Регистрация:
    11 фев 2009
    Сообщения:
    1.898
    Благодарности:
    609
    Баллы:
    275
    Пол:
    Женский
    По имени воба.
     
    neromont и ElderGamer поблагодарили.
  9. neromont

    neromont
    Модостроитель

    Регистрация:
    12 мар 2011
    Сообщения:
    305
    Благодарности:
    295
    Баллы:
    220
    Пол:
    Мужской
    С WEAR_EFFECT мне помог разобраться Gratt.

    Цитата:

    Открыть спойлер

    значит по порядку.
    последовательность проверки эквипа итема такова: если это фиговина с флагом
    меч ->
    else 2h меч ->
    else шит ->
    else лук ->
    else арбалет ->
    else WEAR_HEAD -> // подразумеваются доспехи как бы
    else WEAR_TORSO ->
    _________________________________________________________________________________
    ни одного упоминания эффекта нету. в константном виде 16 или 1 << 4 тож ничего нет
     
    Последнее редактирование: 12 янв 2017
  10. Gratt

    Gratt
    Модостроитель

    Регистрация:
    14 ноя 2014
    Сообщения:
    874
    Благодарности:
    925
    Баллы:
    135
    Пол:
    Мужской
    ты это самое, сделай куда-нибудь список неюзабельного барахла
     
  11. neromont

    neromont
    Модостроитель

    Регистрация:
    12 мар 2011
    Сообщения:
    305
    Благодарности:
    295
    Баллы:
    220
    Пол:
    Мужской
    А можно ли с помощью скриптов узнать какой Npc находится в фокусе?
     
  12. ElderGamer

    ElderGamer
    Модостроитель

    Регистрация:
    16 апр 2008
    Сообщения:
    1.507
    Благодарности:
    928
    Баллы:
    275
    Судя по тому, что эта возможность анонсируется здесь:
    в оригинале это невозможно без расширителей.
     
    neromont поблагодарил.
  13. enil9

    enil9 Участник форума

    Регистрация:
    25 май 2014
    Сообщения:
    56
    Благодарности:
    11
    Баллы:
    75
    Пол:
    Мужской
    neromont и ElderGamer поблагодарили.
  14. ElderGamer

    ElderGamer
    Модостроитель

    Регистрация:
    16 апр 2008
    Сообщения:
    1.507
    Благодарности:
    928
    Баллы:
    275
    Гм, попробовал этот способ. Работает, но есть особенности. Например, если взять в фокус непися, идентификатор "other" проинициализируется ссылкой на этого непися. Но если после этого взять в фокус объект, скамейку, например, то функция Npc_GetTarget возвратит "TRUE", а идентификатор "other" не сбросится. Нужны дополнительные проверки. Это в Г1 так, во всяком случае. :oops:
     
  15. Gratt

    Gratt
    Модостроитель

    Регистрация:
    14 ноя 2014
    Сообщения:
    874
    Благодарности:
    925
    Баллы:
    135
    Пол:
    Мужской
    =>
    это не совсем то. за основу этого метода берется енеми свойство oCNpc +37C/498, коим может являться не только фокус таргет.

    а вот сам фокус имеет отдельную ячейку к клсссе oCNpc +9E4/9AC, где базовым его типом является zCVob из которого можно извлечь и персонажа в том числе
     
    Последнее редактирование: 19 янв 2017
    neromont, enil9 и ElderGamer поблагодарили.
  16. neromont

    neromont
    Модостроитель

    Регистрация:
    12 мар 2011
    Сообщения:
    305
    Благодарности:
    295
    Баллы:
    220
    Пол:
    Мужской
    Это правильный комментарий?
    Открыть спойлер

    const int LOG_OBSOLETE = 4; //Миссия завершена в другом направлении (был выбор вариантов завершения)

    Обычно значение слово OBSOLETE немного другое.
     
    Последнее редактирование: 18 фев 2017
  17. neromont

    neromont
    Модостроитель

    Регистрация:
    12 мар 2011
    Сообщения:
    305
    Благодарности:
    295
    Баллы:
    220
    Пол:
    Мужской
    Зачем делать функцию, которая повторяет назначение внутренней функции?

    func void B_RemoveWeapon(var C_Npc slf)
    {
    AI_RemoveWeapon(slf);
    };
     
  18. kraw

    kraw
    Модостроитель

    Регистрация:
    11 окт 2005
    Сообщения:
    1.722
    Благодарности:
    746
    Баллы:
    275
    Пол:
    Мужской
    для единообразия наименований, полагаю
     
  19. ElderGamer

    ElderGamer
    Модостроитель

    Регистрация:
    16 апр 2008
    Сообщения:
    1.507
    Благодарности:
    928
    Баллы:
    275
    Возможно, это исторический рудимент. В Г1 в подобных случаях ещё имеется вызов функции регистрации событий.
    Код:
    func int C_LookAtNpc(var C_Npc slf,var C_Npc oth)
    {
       AI_LookAtNpc(slf,oth);
       PrintDebugNpc(PD_ZS_DETAIL,"C_LookAtNpc");
       return 1;
    };
    
    Думаю, делалось это с целью отладки движка и скриптов на стадии разработки. В Г2 эту систему выпилили, а сами скриптовые функции-дублёры остались.

    Встречный вопрос. Среди внутренних функций движка есть функции работы с катсценами. Для чего вообще предназначены катсцены? Можно ли их использовать в игре, или они используются для другого, для съёмки видео, например?
     
    Последнее редактирование: 22 фев 2017
    Myxomop и Gratt поблагодарили.
  20. neromont

    neromont
    Модостроитель

    Регистрация:
    12 мар 2011
    Сообщения:
    305
    Благодарности:
    295
    Баллы:
    220
    Пол:
    Мужской
    Я делал CutScene стандартными средствами и пытался запустить скриптами - результат нулевой. Сбой игры.

    CutScene насколько я знаю в AST реализовали
     
Модераторы: Marvіn, MEG@VOLT

Поделиться этой страницей