Сообщество Империал: CK 2 Дневник разработчиков №18: Оптимизация и модинг - Crusader Kings II - Paradox Interactive - Библиотека Статей - Сообщество Империал

Сообщество ИмпериалБиблиотека Статей Paradox Interactive Crusader Kings II CK 2 Дневник разработчиков №18: Оптимизация и модинг Проекты

Информация

Tempest
  • Автор: Tempest
  • Добавлено: 10 авг 2016, 22:57
  • Просмотров: 3 350

Последние Статьи

Актуальные бонусы в казино 888starz
Актуальные бонусы в казино 888starzФонд Игровых · 28 мар 2024, 23:35
World of Infinitas - 2024 Missions (Zero Hour)
World of Infinitas - 2024 Missions (Zero Hour)CountBagaturMonte · 25 мар 2024, 20:18
Онлайн радио и его возможности
Онлайн радио и его возможностиСоциоПат · 18 мар 2024, 22:08

CK 2 Дневник разработчиков №18: Оптимизация и модинг

Дневник разработчиков №18 о дополнении The Reaper`s Due к Crusader Kings 2
Автор: Tempest Tempest
Дата: 10 авг 2016, 22:57 · Просмотров: 3 350
Дневник разработчиков №18: Оптимизация и модинг


Добрый день. Я Magne Skjæran и сейчас я прохожу практику в роли программиста Crusader Kings 2. Также вы можете знать меня как администратора Wiki игр Paradox. Моя практика подходит к концу и было решено, что в её довершение я напишу дневник разработчиков про 2 мои любимые темы: оптимизацию и модинг.

Как все из вас знают, игра имеет свойство замедляться со временем, в основном из-за постепенного увеличения количества персонажей. Особенно это заметно для людей со слабым компьютером, но те, кто играют на 5 скорости, скорее всего тоже это отметили.
Также иногда игра зависает на несколько секунд. Чаще всего это во происходит во время автосохранения, но также есть пауза в конце каждого года и пауза поменьше в конце каждого месяца.

Мы приложили усилия не только для того, чтобы сильно уменьшить эти паузы, но и чтобы ускорить игру в целом. И мы достигли в этом серьёзного успеха.

С 2.6 в поздней игре автосохранения во время наших тестов были в два раза быстрее, чем раньше, при этом лаг в конце года лишь едва заметнее ежемесячного лага, который также сильно уменьшен.
В целом производительность также стала гораздо выше. Отдельные дни теперь быстрее обрабатываются.

Достигли мы этого благодаря множеству различных оптимизаций:
  • Несжатые сохранения теперь меньше чем обычно, что экономит время на сжатии и записи.
  • Сохранения записываются более эффективно.
  • Почти всё, что случалось в конце года, теперь распределено на весь год, так что пауза теперь не будет такой заметной.
  • Мы улучшили рендеринг карты и она значительно ускорилась.
  • Мы прошлись по случаям, когда режимы карты, имена и т.д. были помечены как «устаревшие» на карте и в интерфейсе и убедились, что они будут обновляться только когда это действительно нужно. Например, раньше статус оккупации был помечен как нуждающийся в обновлении, хотя статус на самом деле не изменялся, что давало лишнюю работу CPU.
  • Несколько однопоточных расчётов теперь многопоточные.
  • Различные улучшения в различных расчётах, сильно влияющих на производительность.
  • Теперь генерируется меньше случайных персонажей. Также игра будет более агрессивно уничтожать бесполезных персонажей.


Чтобы продемонстрировать последний пункт, я привожу число живых персонажей в год из одной из моих тестовых игр:
Imperial

У меня нет такой же схемы для 2.5, но, для сравнения, после 400 лет со старого сохранения в 769 году у нас было примерно 30000 живых персонажей, почти в 2 раза больше, чем в моём тестовом сохранении выше.

В конце концов, вы не обязаны просто верить мне на слово: вот видео одновременного запуска 2.5.2 и 2.6:



Двигаемся дальше.

Мне приходилось модифицировать CKII, будучи одним из создателей прекрасного Historical Immersion Project, так что тема модинга близка мне.

По себе знаю, что часто модерам приходится писать различные костыли, потому что нужную им информацию не всегда легко достать. Поэтому я потратил время как и на работе, так и в свободное время, реализуя полезные триггеры и эффекты, даже когда PDS не нуждалось в них немедленно. Divine также занимался внедрением разнообразных возможностей для моддинга, которые предлагали пользователи, а остальная часть команды занималась возможностями, которые нужны для Reaper`s Due. Поправлено определённое количество багов в моддинге и добавлена новая полезная консольная команда.

В общей сложности в нашем чейджлоге модинга содержится около ста пунктов, каждый пункт содержит более одного триггера или эффекта.

Полный список изменений модинга в 2.6

Спойлер (раскрыть)



Одним из самых больших изменений, скорее всего является добавление игровых правил, как описано в одном из предыдущих дневников.
С правилами вы можете добавлять свои собственные настройки, с которыми пользователи смогут настраивать ваш мод. Больше нет нужды добавлять в первый день события или решения, чтобы настраивать мод таким неинтуитивным и неудобный способом, теперь игроки могут настраивать мод также, как и ванилу.
Число правил, как и число доступных вариантов, неограничено. Хотите добавить возможность выставить сценарий Shattered World, например? Добавьте это в правила и мир будет разбиваться так, как пользователь выставил в правилах, нет нужды выбирать это в событии в первый день.
На правила можно ссылаться где угодно в скрипте, их можно использовать практически для любой уместной цели.

Наконец, я написал, как модеры могут ускорить свои моды. Можете прочитать об этом в подразделе модинга. Я поместил это отдельно, чьлюы модеры могли задавать свои вопросы и получать свои ответы отдельно от этого дневника разработчиков:
https://forum.parado...on-tips.962056/


На сегодня всё. The Reaper's Due и патч 2.6 выйдут 25 августа, так что совсем скоро вы сможете ощутить улучшения оптимизации и модинга на себе. Надеюсь, они вам понравятся, потому что мне понравилось их кодить!

Оригинал
    Воспользуйтесь одной из соц-сетей для входа
    РегистрацияВход на форум 
    Сообщество ИмпериалБиблиотека Статей Paradox Interactive Crusader Kings II CK 2 Дневник разработчиков №18: Оптимизация и модинг Обратная Связь
    Стиль:Language: 
    «Империал» · Условия · Ответственность · Визитка · 19 апр 2024, 14:45 · Зеркала: Org, Site, Online · Счётчики