Голосование

Как вы оцениваете Смуту?












Оформление



Пользователей
  • Всего: 28879
  • Последний: Goku
Сейчас на форуме
Пользователи: 0
Гостей: 655
Всего: 655

Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - Van Weyden

Страницы: [1]
1
Выше предела навык поднять можно. Каждое очко сверх лимита будет снижать скорость прокачки до тех пор, пока она не достигнет нуля (и навык не перестанет прокачиваться).
Заметил на днях на одном из спутников:
И ещё одно интересное наблюдение: в скорости изучения нарисованы конские бонусы от атрибутов и очков фокуса, но в итоговое значение от них идут только единичные разряды и дробная часть.
Для примера на скрине: 0.87 + 31.39 - 1.04 = 1.22

2
Путь Воина / Re: Путь Воина v2.4
« : 21 Декабря, 2019, 16:42 »
Камрад, в итоге в версии 2.4 вы знаете как избавиться от лагов при перемещении на стратегической карте?
Скинете может файлик или распишете где чего заменить в тхт?

Усё описано вот тут (в последних двух спойлерах написано, что и на что нужно заменить в файле scripts.txt).

3
Путь Воина / Re: Путь Воина v2.4
« : 20 Декабря, 2019, 08:11 »
Большое спасибо! Это помогло! Я всегда играю в хардкор режиме, мне так более интересно, захватывающе, интригующе :)
Но ведь можно использовать обычный режим и при этом не загружаться в случае неудачи, не правда ли? ;)

Из ивентаря постоянно пропадает овес, в том числе тот, который секунду назад был куплен. При этом игра ругается на скрипты. И еще вопрос по самой игре.
Хотфикс из шапки темы устанавливали?

4
Путь Воина / Re: Путь Воина v2.4
« : 19 Декабря, 2019, 08:10 »
Игра стала крашится (appcrash) >:( Т.к. я играл в режиме одного сохранения, то просто не могу продолжить, при попытке загрузить сейв - вылет. В чем может быть проблема?
На такой расплывчатый вопрос Вам никто не даст ответ ;)
От себя могу посоветовать зайти в паку с сейвами (\Documents\Mount&Blade Warband Savegames\Rus 13th Century Way of the Warrior v2.4), переименовать last_savegame_backup в название одного из слотов (sg00 - первый слот, sg08 - последний), а потом загрузить игру с выбранного слота. Игра загрузится на момент предыдущего (предпоследнего) сейва, насколько я понял механику работы бэкапов в МиБе.
P.S. Для таких крупных модов вообще не рекомендуется использовать хардкор-режим - как раз во избежание таких ситуаций.

5
Путь Воина / Re: Путь Воина v2.4
« : 13 Декабря, 2019, 22:43 »
Ну представляете, пожалуйста.

Сразу оговорю, что:
1. Под спойлером только исходный код
2. Старый код целиком не пишу, только названия скриптов/презентаций, которые нужно модифицировать.
3. Это таки "костыльный" вариант. Если удалять презентацию draw_equipment_hp, то миникарта будет всегда отображаться... А так приходится весь код из draw_equipment_hp дублировать в map_then_battle, что тоже не гуд. Может быть, объявить глобальную переменную и в зависимости от её состояния рисовать/не рисовать миникарту? Я бы может и занялся этим, но сессия, все дела...
4. Тестировалось это усё на версии 2.1, ибо я так и не вкурил, как компилить сорцы 2.4. В той версии были скрипты в папке process, с помощью которых и выполнялась компиляция. А в 2.4 - то ли версию питона стали использовать третью вместо второй, то ли чего-то в сорцах не хватало...
Janycz, если просветите, буду весьма признателен.


6
Путь Воина / Re: Путь Воина v2.4
« : 08 Декабря, 2019, 22:08 »
Janycz, поэтому и не стоит городить новых, особенно, если знаешь, как сделать по-нормальному ;)
Если кому-то из разработчиков действительно любопытен мой вариант решения, я могу написать и исходный код. Хотя, думаю, просто у них руки до этого не дошли. А, может быть, отсутствие отображения миникарты и прочности оружия одновременно - "не баг, а фича" :laught:

7
Путь Воина / Re: Путь Воина v2.4
« : 08 Декабря, 2019, 19:30 »
Раз уж начал ковыряться в модульке, почему бы не поковыряться ещё?  ;)
Заодно прикладываю скомпилированный код, чтобы простые игроки могли отредактировать свои файлы, не дожидаясь, пока эти изменения появятся в моде. Ну, и тестированию помогут  :D
Хотя, кто знает, может меня одного напрягали эти моменты?

Вот мой вариант исправления ещё одного старого бага, когда убитые противники не исчезали с миникарты:

Отображение прочности оружия и миникарты одновременно:

8
Путь Воина / Re: Путь Воина v2.4
« : 05 Декабря, 2019, 16:32 »
Насколько я понял, этот скрипт отвечает за бонусы/дебафы от снаряжения, книг и карт. И, для НПС имеет значение только одетая экипировка. Но навскидку из таких вещей я могу вспомнить только перчатки и лошадей (причём для лошади игрока есть отдельная ветка в скрипте, а для лошадей спутников почему-то нет), которые влияют на "мощный выстрел".

Самое интересное началось, когда я начал дебажить этот скрипт. Если выбросить те блоки, внутри которых была проверка вида "(eq, ":troop_no", "trp_player"),", то в цикле останется код, срабатывающий только для НПС (код привожу просто для понимания, что именно скрипт у них проверяет):
  (troop_is_hero, ":troop_no"),#may be should skip lords too?
  #and sure, we can't do it for regulars
  (store_add, ":holder", skill_holder_begin, ":skill_no"),
  (try_for_range,":slot", 0, 256),#up to 256 items that effect current skills
     (quest_get_slot, ":item", ":holder", ":slot"),#that's not quest, that's skill slots R.
     (try_begin),
       (le, ":item", 0),
       (neg|is_vanilla_warband),
       (assign, ":slot", 256),
       #(break_loop),
     (try_end),
     (gt, ":item", 0),
     (item_get_slot, ":req", ":item", slot_item_intelligence_requirement),
     (store_attribute_level, ":skill_level", ":troop_no", ca_intelligence),
     (ge, ":skill_level", ":req"),
     (item_get_slot, ":method", ":item", slot_item_skill_modifier_method),
     (try_begin),
       (eq, ":method", 2),
       (troop_has_item_equipped, ":troop_no", ":item"),
       (item_get_slot, ":modifier_value", ":item", slot_item_skill_modifier_value),
     (try_end),
  (try_end),
Я вставил в исходный скрипт код, отправляющий дебаг-сообщение, чтобы отследить срабатывание блока для НПС в игре. И, как оказалось, на глобалке блок кода для НПС не выполняется. То есть весь перебор предметов для них идёт зазря. А вот в бою есть единичное срабатывание, в самом начале (когда в лог ещё пишется информация о снаряжении, хп и т.п.).

Таким образом, я предлагаю исправить этот код:

На этот:

В скомпилированном виде (scripts.txt):
Заменить это:

На это:

Janycz, после замены скрипта лаги на глобалке пропали. Вернее, почти пропали - периодические микрофризы всё-таки есть, но в среднем 55-60 кадров игра выдаёт.

9
Путь Воина / Re: Путь Воина v2.4
« : 05 Декабря, 2019, 10:09 »
Я нашёл "виновника":
  #script_game_get_skill_modifier_for_troop
  # This script is called from the game engine when a skill's modifiers are needed
  # INPUT: arg1 = troop_no, arg2 = skill_no
  # OUTPUT: trigger_result = modifier_value
  ("game_get_skill_modifier_for_troop",
  [
    (store_script_param, ":troop_no", 1),
    (store_script_param, ":skill_no", 2),
    (assign, ":modifier_value", 0),
    (try_begin), #needed to suppress script can fail warn.
      (troop_is_hero, ":troop_no"),#may be should skip lords too?
      #and sure, we can't do it for regulars
      (store_add, ":holder", skill_holder_begin, ":skill_no"),
      (try_for_range,":slot", 0, 256),#up to 256 items that effect current skills
        (quest_get_slot, ":item", ":holder", ":slot"),#that's not quest, that's skill slots R.
        (try_begin),
          (le, ":item", 0),
          (neg|is_vanilla_warband),
          (assign, ":slot", 256),
          #(break_loop),
        (try_end),
        (gt, ":item", 0),
        (item_get_slot, ":req", ":item", slot_item_intelligence_requirement),
        (store_attribute_level, ":skill_level", ":troop_no", ca_intelligence),
        (ge, ":skill_level", ":req"),
        (item_get_slot, ":method", ":item", slot_item_skill_modifier_method),
        (try_begin),
          (eq, ":method", 1),
          (eq, ":troop_no", "trp_player"),
          (player_has_item, ":item"), #assume other chars does not have inventory
          (item_get_slot, ":modifier_value", ":item", slot_item_skill_modifier_value),
        (else_try),
          (eq, ":method", 2),
          (try_begin),
            (eq, ":troop_no", "trp_player"),
            (eq, "$g_in_mission", 1),
            (get_player_agent_no, ":agent_no"),
            (assign, ":pass", 0),
            (ge,":agent_no",0),
            (try_begin),
              (item_get_type, ":type", ":item"),
              (eq, ":type", itp_type_horse),
              (agent_get_horse, ":horse", ":agent_no"),
              (ge,":horse", 0),
              (assign, ":pass", 1),
              (agent_get_item_id, ":item_horse", ":horse"),
              (eq, ":item_horse" , ":item"),
              (item_get_slot, ":modifier_value", ":item", slot_item_skill_modifier_value),
            (else_try),
              (agent_has_item_equipped,":agent_no",  ":item"),
              (item_get_slot, ":modifier_value", ":item", slot_item_skill_modifier_value),
              (assign, ":pass", 1),
            (try_end),
            (eq, ":pass", 1),
          (else_try),
            (troop_has_item_equipped, ":troop_no", ":item"),
            (item_get_slot, ":modifier_value", ":item", slot_item_skill_modifier_value),
          (try_end),
        (try_end),
      (try_end),
    (try_end),
    (set_trigger_result, ":modifier_value"),
  ]),
P.S. Немного отформатировал код (в плане отступов), чтобы улучшить читаемость.

10
Путь Воина / Re: Путь Воина v2.4
« : 05 Декабря, 2019, 00:29 »
Janycz, убрал ВСЕ триггеры (из triggers и simple_triggers), чей период срабатывания менее 6 часов - не дало эффекта.

Такой вопрос: скрипты могут быть вызваны только через триггеры? Я так полагаю, что нет, иначе скрипт на изменение модификатора скорости не работал бы...
Есть ещё один вопрос: могут ли лаги быть вызваны чем-то ещё окромя скриптов?

11
Путь Воина / Re: Путь Воина v2.4
« : 04 Декабря, 2019, 21:20 »
Van Weyden, я кста тоже по триггерам пробежался и ничего подозрительного не нашел. Поэтому надо проверять скрипты, ведь они могут быть вызваны с триггеров.

Ну я все циклы, пробегающиеся по нпс в отряде игрока вырезал из исходников скриптов и проверял - не помогло. Ещё решил проверить - может дело в фураже для коней - тоже мимо.
У меня пока нет идей, какой ещё код в скрипте может быть связан с нпс ¯\_(ツ)_/¯.

12
Путь Воина / Re: Путь Воина v2.4
« : 04 Декабря, 2019, 14:51 »
Хочу отметить, что проблема появилась не в последнем патче. У меня лежит старая версия, кажется, 2.1 - для которой требовался клиент 1.153, там тоже наблюдались лаги со спутниками. Но тогда я просто решил, что старый ноут не тянет.
Я попытался найти скрипт/триггер, вызывающий лаги (были сорцы версии 2.1 и знание о том, как их скомпилировать. С последней версией я как-то не разобрался, ибо моддингом и модулькой не занимался от слова совсем.).
Поочерёдно вырезал подозрительные места: циклы обхода вида
(try_for_range, ":npc", companions_begin, companions_end)
но это не дало результатов.
Пробежался по триггерам, которые срабатывают ежечасно (я же правильно понял, что на период срабатывания указывает первое число в коде триггера? :)), там тоже не нашёл ничего криминального.

13
Путь Воина / Re: Путь Воина v2.4
« : 02 Декабря, 2019, 01:42 »
Vanok, раздел всех - лаги остались. И да, повторюсь, лаги только при передвижении по глобальной карте. В битвах всё в порядке.
Видимо, какой-то триггер, связанный с компаньонами, по кд проверяется. Как (Dmitriy) выше писал, с 1-2 ещё терпимо, хотя тоже видно, что игра уже не плавно идёт.

14
Путь Воина / Re: Путь Воина v2.4
« : 02 Декабря, 2019, 00:02 »
В общем, опытным путём выяснил, что это как-то связано со спутниками-НПС в отряде. Выгнал всех, и всё стало в порядке. Но, чёрт побери, я так не хочу :(

15
Путь Воина / Re: Путь Воина v2.4
« : 01 Декабря, 2019, 22:36 »
1) Настройки графики подкрутить.
2) 30 fps вполне достаточно, я считаю [хотя следует сказать, что это немного не так].
3) Каковы характеристики компьютера?
Если бы это были стабильные 30 ФПС, я бы согласился. Но, по ощущению, это 60 с периодическими просадками до нуля, из-за чего вся картинка идёт "рывками".
Железка следующая: Ryzen 7 3750h, GTX 1660Ti, 16 GB ОЗУ, Win 10 Pro x64.
Настройки пробовал ставить на минималки, эффекта не дало. Также пробовал однопоточный режим (с выделением конкретного физ. ядра чисто под игру) - тоже не дало эффекта.
Есть ещё одно интересное наблюдение: игра крашится при загрузке сейва, если в лончере отключить параметр "подгружать текстуры в ходе игры".

Так, собственно, вопрос другим игрокам: как у вас дела с ФПС на глобалке?

16
Путь Воина / Re: Путь Воина v2.4
« : 29 Ноября, 2019, 18:00 »
Доброго времени суток. Есть проблема с производительностью игры ("рывки") на глобальной карте. Примерно после 15 дня игры, средний фпс падает до 30. При ускорении времени - до 10-15. В боях всё нормально.

Степерь загруженности системы при движении по глобалке можно оценить по скрину:


Версия игры - стимовская 1.174, WSE 4.7.0.
Есть идеи, как повысить производительность, или это уже движок не справляется с таким количеством объектов на карте?

Страницы: [1]
СиЧЪ Total War СиЧЪ Total War
Сайт "Всадники Кальрадии" не является СМИ. Администрация не несет ответственность за высказывания и публикацию каких-либо материалов, сделанные любыми пользователями форума, в том числе посредством личных и публичных сообщений. Материалы, размещенные на ресурсе третьими лицами, могут содержать информацию, не предназначенную для лиц, не достигнувших совершеннолетия. При обнаружении на ресурсе материалов, нарушающих законодательство Российской Федерации, необходимо обращаться к администрации.
Сайт работает на быстром VPS/VDS хостинге от FASTVPS


Powered by SMF 2.0 | SMF © Simple Machines LLC