Сообщество Империал: Hearts of Iron IV (День Победы IV) - Дневник разработчиков - Сообщество Империал

  • Поиск
  • Законы
  • Сообщество
  • Репутация
  • Экономика
  • Больше

Hearts of Iron IV (День Победы IV) - Дневник разработчиков
Дневники разрабов и их обсуждение
Тема создана: 21 Март 2015, 20:29 · Автор: CerberСообщений: 88 · Просмотров: 19 660

  • 9 Страниц
  • Первая
  • 5
  • 6
  • 7
  • 8
  • 9

Недавно добавленные Статьи

Shadowrun: Hong Kong

Honda Tadahacu

Super Star Wars ОбзорЪ

Count Bagatur RF

Грюнвальдская битва.

Ιουστινιανός

Cerber

    861

    253

    0

    270

    1 300
  • Статус:Центурион

Дата: 21 Март 2015, 20:29

Hearts of Iron IV (День Победы IV) - Дневник разработчиков


Информационные темы по Hearts of Iron IV (День Победы IV):


    Age of Kings

      3 201

      278

      22

      375

      3 321
    • Статус:Советник
    • Трибун:Феодалы

    Дата: 21 Август 2016, 06:11

    Ссылки на Дневники разработчиков (какие есть):
    Спойлер (скрытая информация)
      • 9 Страниц
      • Первая
      • 5
      • 6
      • 7
      • 8
      • 9

      Консерватор

        5 584

        194

        5

        356

        4 240
      • Статус:Король Севера

      Дата: 07 Декабрь 2016, 21:11

      Для просмотра ссылки ЗарегистрируйесьLord-Inquisitor

      Первое применение новой возможности довольно очевидно

      Не понимаю смысла этого решения. Советские республики тогда ничего не решали и полностью были подконтрольны Центру. Зачем их выедлять в составе СССР... :facepalm:

        Tempest

          771

          119

          86

          218

          1 426
        • Статус:Седой мембой
        • Трибун:Парадоксы

        Дата: 07 Декабрь 2016, 21:13

        Для просмотра ссылки ЗарегистрируйесьКонсерватор

        Для просмотра ссылки ЗарегистрируйесьLord-Inquisitor

        Первое применение новой возможности довольно очевидно

        Не понимаю смысла этого решения. Советские республики тогда ничего не решали и полностью были подконтрольны Центру. Зачем их выедлять в составе СССР... :facepalm:

        Это не выделение, это демонстрация косметических тэгов, там вся Восточная Европа показана как ССР и рейхскомиссариаты :facepalm:

          Консерватор

            5 584

            194

            5

            356

            4 240
          • Статус:Король Севера

          Дата: 08 Декабрь 2016, 12:58

          Для просмотра ссылки ЗарегистрируйесьLord-Inquisitor

          Это не выделение, это демонстрация косметических тэгов, там вся Восточная Европа показана как ССР и рейхскомиссариаты

          Всё равно полный абсурд. Ещё и эти кривые названия - Белорусская/Украинская Автономная ССР.

            Reis666

              9 785

              388

              0

              1 829

              6 146
            • Статус:"БесПаники"

            Дата: 09 Декабрь 2016, 12:07

            Что б можно было сделать марионетки. Иначе зачем?
            Хотя может быть еще и влияние современной политики, хотя снежки вроде раньше этим не занимались.

              Tempest

                771

                119

                86

                218

                1 426
              • Статус:Седой мембой
              • Трибун:Парадоксы

              Дата: 14 Декабрь 2016, 15:02

              Дневник разработчиков — 14 декабря 2016
              Достижения и патчлог


              Привет всем! Это будет последний дневник разработчиков про Вместе к Победе перед завтрашним релизом. Когда выпускаешь что-то, над чем ты работал долгое время, и оно наконец попадает в руки (или в другой ближайший аналог цифрового распространения) геймеров — это всегда сочетания возбуждения и волнения. Нам очень хочется увидеть, что вы думаете о первых шагах в обновлениях HoI 4. Однако, перейдём сразу к делу, сегодняшняя тема: Достижения и патчлог "Факела"!

              Достижения
              Мы добавили окно просмотра достижения в дополнении, чтобы просматривать достижения и условия их выполнения было проще:



              У записей также есть всплывающая подсказка с подробностями о требованиях для получения.

              Конечно же, мы добавили для вас ещё больше достижений!

              Мозгиииии!

              За Канаду завершите фокус "Послать зомби" .

              Район №9

              За Южную Африку имейте 9 гражданских фабрик в Трансваале.

              Наши слова подкреплены ядерным оружием

              За Индию разработайте и используйте ядерную бомбу. У вас должен быть национальных дух "Движение 'Вон из Индии' "

              Короли-крестоносцы

              За Южную Африку завершите фокус "Король для нашего народа" и возьмите Иерусалим.

              Короли-крестоносцы 2

              За Южную Африку завершите фокус "Антиколониальный крестовый поход", освободите все европейские колонии через фокус и возьмите Лондон.

              Правь Британией

              За любой британский субъект завоюйте всю Британию.

              Перерезать нити

              Освободитесь от своего повелителя за марионетку.

              Это снова 1812

              За Канаду захватите и удержите город Вашингтон.

              Оружие 3-й войны с эму

              За Австралию используйте ядерную бомбу на австралийской территории.

              Я мастер барбекю

              За Южную Африку освободитесь от Великобритании и сделайте другу страну марионеткой.

              Империя наносит ответный удар

              За Великобританию объявите войне одному из своих бывших субъектов.

              Кукловод

              Имейте по крайней мере 26 субъектов .

              Освобогипет!

              За Египет пройдите путь от марионетки до свободной страны благодаря системе автономии.

              Патчлог 1.3 "Факел"
              Как всегда, релиз дополнения сопровождается бесплатным патчем с исправлением багов, улучшениями и нововведениями. Вместе с Together for Victory завтра выйдет патч 1.3, который мы назвали "Факел". Под спойлером полный список:
              Патчноуты 1.3

              Из-за этих изменений 1.3 не особо будет совместим с сохранениями 1.2.1, так что убедитесь, что есть сохранённая версия в Steam, к которой вы можете вернуться при желании завершить текущую партию (в списке бета-версия она будет названа 1.2.1)

              Также мы добавляем несколько генералов для Италии и Франции, которых ранее немного не хватало (часть бесплатного патча). Те, кто следят за моим твиттером, могли уже их видеть, но вот и для всех остальных:



              Вы можете предзаказать Together for Victory Для просмотра ссылки Зарегистрируйесь. Если вы являетесь обладателем Expansion Pass, то уже получили его (вместе с двумя следующими дополнениями). Владельцы TfV также получат новые аватарки для форума и уникальную иконку! (вообще люди с простой игрой тоже получат несколько сегодня).

              Для просмотра ссылки Зарегистрируйесь

                Tempest

                  771

                  119

                  86

                  218

                  1 426
                • Статус:Седой мембой
                • Трибун:Парадоксы

                Дата: 21 Декабрь 2016, 18:34

                Дневник разработчиков — 21 декабря 2016
                Рождество и выход хотфикса




                Привет всем :D Надеюсь, всем понравилось играть в Together for Victory. Это будет последний дневник в году, так что поехали!

                У нас не было времени собрать достаточно много статистики про релиз, но, по крайней мере, смог раскопать самые популярные страны Содружества за последние несколько дней:
                1. Индия
                2. Канада
                3. Австралия и Южная Африка (практически одинаковый счёт)
                4. Новая Зеландия

                Вообще я думал, что Индия окажется под Австралией, но нет. Однако в более длинных играх (больше 15 часов) Канада оказывается на уровне Индии.

                Использование модов рекордно высокое, прямо перед релизом TfV моды использовали 60%(!!!) игроков. Пока что это самый высокий показатель среди всех серий PDS, и в следующем году мы собираемся дать ещё больше поддержки моддерам в свете этого.

                После выхода этого дневника должен выйти хотфикс 1.3.1. Для просмотра ссылки Зарегистрируйесь Мы знаем, что это не исправляет все известные проблемы, но мы предпочли не ждать до конца Рождества, а убедиться, что все получат то, что мы сделали и протестировали, а не только те, кто подписались на бету.. Завтра практически все в команде будут праздновать Рождество. Мы вернёмся 8/1 с полными карманами конфет и боевым настроем и начнём работать над известными проблемами для следующего хотфикса. Я также дам вам немного пояснений в будущем, когда дело дойдёт до патчей.

                Всем счастливого Рождества (хотя я подозреваю, что мы увидимся на форуме и во время отпуска ;) )

                Для просмотра ссылки Зарегистрируйесь

                  Tempest

                    771

                    119

                    86

                    218

                    1 426
                  • Статус:Седой мембой
                  • Трибун:Парадоксы

                  Дата: 01 Февраль 2017, 21:37

                  Дневник разработчиков — 1 февраля 2017
                  Нововведения моддинга в 1.3.3


                  Привет всем.

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

                  Древа технологий
                  Древа технологий часто модифицируют в HOI4, особенно древа, которые уникальны для определённой нации. Это достигалось при помощи небольшой хитрости: первая технология в древе была доступна только определённой стране. Это позволяло достичь цели, но игрок видел все древа, даже если не мог их исследовать. В 1.3.3 мы добавили папки с динамическими технологиями, которые прячут и блокируют все технологии в папке, которые не вызываются триггерами. Я подготовил примеры "до" и "после" внешнего вида нововведения, используя BlackIce в качестве примера.




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

                  Промышленность
                  Одним из основных направлений в 1.3.3 было улучшение промышленного баланса. Мы поговорим об этом позже (когда всё будет готово :D), но это привело к появлению нововведений, о которых моддеры также просили. Например, теперь возможно разделить промышленные бонусы между фабриками и верфями (также полезно для балансирования концентрированной и рассредоточенной промышленности) или проконтролировать максимальное число фабрик, которые можно назначить на производственную линию (некоторые моды любят ограничивать максимум для производства кораблей, например, потому паралельно там вы производите больше, чем серийно), но раньше это можно было реализовать только ограничением интерфейса пользователя. Теперь это можно отдельно настроить для военных, гражданских и морских линий.

                  Смена названий регионов




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



                  И многое другое!
                  Эти нововведения впечатлят вас. В другое не поверю.
                  Спойлер (скрытая информация)


                  Остальная часть нашей команды исправляет баги, работает над производительностью в лейтгейме и, как всегда, улучшает ИИ.

                  Для просмотра ссылки Зарегистрируйесь

                    Tempest

                      771

                      119

                      86

                      218

                      1 426
                    • Статус:Седой мембой
                    • Трибун:Парадоксы

                    Дата: 08 Февраль 2017, 20:36

                    Дневник разработчиков — 1 февраля 2017
                    Обновления патча 1.3.3 №1


                    Привет всем! Простите, что припозднился с дневником, нам пришлось разбираться с неким альтернативным контентом, так как люди, которые должны были этим заниматься, пали жертвой вражеского окружения и ужасного истощения (т.е. заболели). Это означает, что вместо оптимизации и ИИ мы поговорим о балансе, с которым мы работали для патча 1.3.3 (и который почти доделан).

                    Промышленность - Эффекты от промышленности
                    Инфраструктура теперь будет влиять на стоимость строительства заводов в регионе. На самом высоком уровне инфраструктуры стоимость каждого завода будет такая же, как раньше, но с небольшим уменьшением для удобочитаемости. В менее развитых регионах с низким уровнем инфраструктуры строительство заводов дороже. Бонус к строительству от инфраструктуры показан в строительном режиме карты.



                    На это изменение нас подвигло 2 причины. Мы хотели убедиться, что некоторые регионы будут более ценными, чем другие, ведь теперь они буквально будут становиться центрами индустриализации. Вторая причина состоит в том, чтобы уменьшить рост промышленности в средине и конце игры, который, по нашему мнению, был слишком быстрый (в этом плане мы также поработали с исследованием технологий). Мы чувствовали, что ценность инфраструктуры и фокусов, дающих инфраструктуру была слишком низкой, а эти изменения немного улучшат ситуацию!

                    Промышленность - Изменения в эффективности
                    Первые 90 процентов кода считаются за первые 90 процентов времени разработки. Оставшиеся 10 процентов кода считаются за оставшиеся 90 процентов времени разработки.

                    Это известная шутка в кругах разработчиков ПО, которая приписывается Тому Каргилу из Bell Labs. В принципе, эта шутка правдива, и её можно применять не только к программированию. Каждый раз, когда вы начинаете работать над чем-то новым, сначала прогресс идёт достаточно быстро, но каждое улучшение становится всё тяжелее и тяжелее.

                    В HoI4 эффективность производства имела линейный рост. Мы изменили это, теперь сначала эффективность растёт относительно быстро, но чем эффективнее становятся линии производства, тем медленнее идёт прогресс.



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

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

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

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

                    Когда страна в войне, лимит напряжённости для присоединения к фракции понижен. Это позволяет странам вмешиваться в ранние войны не только благодаря гарантиям.

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



                    На следующей неделе мы поговорим про ИИ, оптимизацию и прочее. Тогда и увидимся!


                    Для просмотра ссылки Зарегистрируйесь

                      Tempest

                        771

                        119

                        86

                        218

                        1 426
                      • Статус:Седой мембой
                      • Трибун:Парадоксы

                      Дата: 17 Февраль 2017, 23:27

                      Дневник разработчиков — 17 февраля 2017
                      Обновление патча 1.3.3 №2


                      Привет всем. Добро пожаловать в последний апдейт по патчу 1.3.3 перед тем, как он уйдёт на финальное тестирование. Это будет большой дневник с гостями, @SteelVolt (ИИ) и @ TomaszKowalczyk (техлид), которые также напишут свою часть. Берите чашку наичернейшего кофе и наслаждайтесь!

                      Промышленность - изменения в нехватке ресурсов
                      Завершая тему промышленности, которую мы поднимали в последние недели: Сейчас из-за нехватки ресурсов максимальным штрафом линий производства является -80%. Фактически с этой проблемой можно было справиться, просто построив больше фабрик. Мы поняли, что это было нереалистично и к тому же делало ресурсы недостаточно важными для больших стран. Теперь штраф от нехватки ресурсов рассчитывается между всеми линиями за каждый недостающий ресурс. Постепенно этот штраф может вырасти до -100%.



                      Удобства!
                      Как обычно, в патчах мы не только правим баги и баланс, но и добавляем всякие приятные улучшения, которые хоть и не слишком большие, зато сильно заметны в игре. Поехали:
                      Нужно начать строительство с наивысшим приоритетом? Без проблем. Если зажать Ctrl при строительстве, новый запрос появится сразу наверху очереди.
                      А теперь то, что давно пора было сделать. При нажатии на дивизию в списке дивизий окно прокрутится до выбранной.



                      У вас возникали трудности с нахождением всех своих отрядов в мешанине войск? Теперь есть кнопка (в нижнем правом углу экрана), которая вызывается также на кнопку 'M', которая прячет ВСЕ значки, кроме ваших юнитов.



                      Так как иногда проблематично строить планы насчёт регионов, о которых у вас мало сведений, мы добавили кнопку для выключения тумана войны, если вам понадобится получше разглядеть местность и т.п.
                      Мы изобрели революционную вещь, которую было решено назвать "полоса загрузки"



                      У вас тоже есть тот друг, который всегда лагает в мультиплеере? Надоело видеть выскакивающее сообщение "игрок отстаёт"? Теперь это оповещение. Всплывающая подсказка разъясняет, кто и как сильно отстаёт. Очевидно, что, когда игрок догоняет остальных, оповещение автоматически пропадает.
                      Чтобы быть последовательными со звеньями самолётов — теперь для всех неприкреплённых дивизий тоже есть оповещение. Это очень полезно, когда, например, друг шлёт вам экспедиционные войска, а вы без понятия, где они сейчас. Теперь нажатием на оповещение можно переключаться между всеми неприкреплёнными дивизиями!



                      Обновление ИИ!
                      Несколько человек на форумах попросили поподробнее разобрать улучшения ИИ, как мы это делали перед релизом TfV, и они были услышаны. Вот новости от @SteelVolt:

                      Приветствую всех! Ненадолго оторвавшись от очень кропотливой роботы над улучшением HoI4 (не считая последнюю неделю, когда я слёг от гриппа), я прибыл сюда с небольшим набором новостей о том, что происходит в моей сфере.

                      Как и в последний раз, я начну с истории из окопов. Эта история произошла в текущем цикле разработки. После небольшой работы над ИИ, мы отметили в наших тестовых забегах без игрока, что Германия постепенно побеждала Англию. Прорваться через Королевский флот — немалое достижение, но сперва мы подумали, что Германия, одолевшая Советы (что она и делала в тот момент), получит достаточно промышленности, чтобы противостоять флоту самолётами. Оказалось, что всё не так гладко. Оказалось, что на самом деле у ИИ флота была проблема, из-за которой невероятно проблематично было сменить регионы назначенных флотов, а Англия к тому времени уже разослала большую часть своего флота.

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

                      Вторым улучшением является то, как ИИ использует ударный флот (то есть флот, которые не охраняет или охотится, а уничтожает главный флот врага)

                      Хоть грядущий патч и не затрагивает все улучшения ИИ, над которыми сейчас работают, есть несколько причин восхищаться ИИ в следующем обновлении. Мне показалось, что стоит осветить самые интересные из них.

                      Первым на очереди идёт печально известный спам юнитами:
                      - ИИ лучше подсчитывает снабжение, когда решает, сколько дивизий выставить
                      - Добавлена стратегия equipment_stockpile для ИИ, которая позволяет влиять на то, сколько запасов он будет делать
                      - Страны ИИ с большим количеством дивизий будут пытаться сделать запасы побольше на всякий случай.
                      Кроме исправления пары небольших багов также было место для улучшения кода там, где ИИ оценивал, сколько дивизий он сможет поддерживать. Теперь он делает это получше. Также ИИ теперь более осторожен с запасами снаряжения, особенно если это касается большой страны со множеством дивизий.
                      - ИИ развёртывания улучшен, чтобы лучше справляться с линиями тренировки; улучшен расчёт желаемого количества дивизий.
                      Частично связанно с предыдущим пунктом. ИИ любил сразу поставить на потом много линий дивизий, а потом при определённых обстоятельствах просто удалял их и начинал заново. Это всё было переработано и теперь ИИ умереннее действует как при планировании, так и при реакции на изменении.
                      - Теперь ИИ будет убирать линии тренировки, если он уже имеет достаточное количество юнитов.
                      Говорит само за себя. Раньше ИИ предпочитал оставлять уже начатые линии, будучи очень негибким при смене ситуации.

                      Идём дальше. Я удивлён, что этот баг не отловили раньше:
                      - Исправлена серьёзная проблема, когда ИИ никогда не пытался справиться с сопротивлением при помощи приказов по защите региона, полностью игнорируя захваченную территорию.
                      Хоть ранее и упоминалось, что ИИ сможет лучше бороться с сопротивлением, оказалось, что он этого вообще никогда и не делал. Это произошло из-за одной ошибки в одном операторе "if", из-за которого ИИ считал нужной бороться с сопротивлением только на СВОЕЙ территории, в противоположность КОНТРОЛИРУЕМОЙ.


                      Ужесточения и изменения в плане промышленности означали и изменения ИИ в этой области:
                      - Улучшена логика для целей и времени отправки ленд-лиза
                      - ИИ теперь может оправлять ленд-лизом не только самое новое снаряжение, но и старое
                      - Также ИИ отменяет ленд-лиз, если не может себе его позволить или если нет смысла отправлять его определённым странам.
                      - ИИ больше не должен предпочитать морское строительство военному, если у него есть много гражданской промышленности
                      С первой парой всё довольно просто: теперь вы должны видеть более эффективный ленд-лиз. От последней проблемы страдали многие страны (но по большей части США). Когда у страны было много гражданской промышленности, она считала, что нужно строить меньше военных заводов в пользу верфей.

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

                      Давайте присмотримся к скриншоту, от которого я становлюсь счастливым: Япония не объявляет войну Советскому Союзу до того, как достаточно обезопасить китайский фронт.




                      Производительность и Оптимизация
                      Эта часть для тех, кто заинтересован в подробностях кода и всяких технических деталях. Просто предупреждение! Мы поняли, что фанатов могут заинтересовать технические подробности и углубление в работу кодеров. Потому дайте нам знать, если текст был интересным или расплавил ваши мозги (уж во время перевода точно расплавит). Теперь я дам слово нашему техлиду проекта, @TomaszKowalczyk:

                      Привет всем, я собираюсь поговорить о всей работе над оптимизацией, которую я сделал для патча. Конечно же, мы собираемся улучшать её и в следующих патчах, но в 1.33 общая скорость увеличилась примерно на 14-18%. Хоть звучит и не слишком впечатляюще, но основной упор был на решении проблем с "шипами" производительности. Это моменты, когда игра буквально зависает в определённые моменты (обычно каждый 24й час, в начале нового дня). В очень поздней игре они раздражают больше всего. Я сильно улучшил ситуацию с ними. Я сравнивал очень позднее сохранение на 1.3.2 и 1.3.3. Первый дневной тик после снятия паузы в 1.3.2 занимал 4 секунды, а в 1.3.3 — менее 0.4 секунды.


                      Обычно мы не делимся рутинными техническими подробностями, но в этот раз я напишу, что и как замедляло игру:
                      - Я немного переработал код мирной конференции, который считал, что каждая страна может получить. В огромной войне, где проиграла большая страна, нажатие "Пропустить" снова и снова всё замедляло и замедляло игру, пока она практически не зависала. Такое было во всех мирных конференциях. В маленьких войнах это просто было трудно заметить. Проблема была в неудачной петле кода. После его перезаписи всё пошло как по маслу.
                      - Каждый раз, когда игрок нажимает на флот и назначает ему миссию в каком-то регионе, игра делает "нахождение пути для флота" и посылает флот в нужную область. У ИИ была логика, которая должна была убеждаться, что его флоты делают нужные задания, и оказалось, что эта логика спамила "иди туда", "иди туда", "иди туда", хотя достаточно было просто сказать один раз. Всё, что связанно с нахождением пути, довольно сложно и сильно влияет на производительность, но, к счастью, хватило одной строчки кода, которая и решила проблему со спамом!

                      Улучшения в системе снабжения, которая больше всего изменилась.
                      Одной из проблем было то, что многие игровые элементы опираются на информацию про "поддерживаемое снабжение" vs "требуемое снабжение". То есть сколько юнитов может вместить зона без штрафа. Каждый кусок кода, который спрашивал у региона "сколько поддерживается и сколько требуется" пересчитывал эти цифры с нуля. Он спрашивал у всех отрядов в области "сколько припасов ты используешь" и "сколько поддерживает регион" (ещё одна сложная формула). И это происходило сотни раз разными элементами в одной и той же вычислительном фрейме. Вместо этого я сделал так, чтобы информация считалась только раз, а потом сохранялась в "кэшированной памяти". Все игровые элементы теперь берут данные прямо из кэша, практически не влияя на производительность.

                      Другой проблемой системы снабжения было большое количество отрядов. В очень поздней игре обладание множеством дивизий — настоящая проблема, и она требует большие вычислительные мощности. В этот раз это почти убило систему снабжения. Я сделал множество штучек, чтобы улучшить ситуацию. Мне пришлось переписать способ вычисления потребления припасов в каждой зоне. Вместо того, чтобы просматривать каждую провинцию и перебирать все отряды, спрашивая у каждого "какое у тебя потребление припасов?", я зашёл с другой стороны. Каждый час каждый юнит "докладывает" о потреблении ресурсов в своём месторасположении, составляя общее значение в регионе. По правде сказать, это была лучшая оптимизация в мире. Как оптимизировать функцию? Уберите её :)
                      В системе снабжения было так много улучшений, что их все просто нет смысла перечислять. Вместо этого в качестве итога я скажу, что раньше система снабжения занимала примерно 65% времени вычислений в ежедневных "шипах", а теперь — меньше 6%.

                      - Ещё одна оптимизация ежедневных "шипов" связана с тем, как ИИ играется дизайнером дивизий, чтобы получить желаемые шаблоны. Фикс был довольно простым. Я обнаружил, что, когда мы пытаемся добавить/убрать/заменить дивизию в любом слоте, общие статы шаблона повторно вычисляются. Это тяжко. Ну, может не настолько тяжко, но становится "настолько", когда все страны мира пытаются перебрать все возможные комбинации в одном фрейме. Оказалось, что достаточно обновлять статы шаблона только после того, как ИИ заполнил все слоты.
                      - Было много оптимизировано в плане: планирования морских вторжений; кода ИИ, ответственного за распределение юнитов по фронту; вычисление флотами бонусов от радаров; конвои, проверяющие, как можно пройти, если определённые каналы перекрыты и многие другие улучшения, которые сложно объяснить.
                      - Ну и последнее, моё любимое. В нашем движке Clausewitz была старая петля кода, к которой никто не смел прикасаться. Она обрабатывала все элементы пользовательского интерфейса в "плоском стиле" вместо древовидной иерархии. Это значило, что чем больше окон и кнопок мы добавляли, тем тяжелее и тяжелее становилась петля. И окна даже не должны были при этом отображаться, чтобы тормозить игру. Мы все знали об этом печально известном месте, но его переработка без крушения всех интерфейсов была практически невозможной. До этого момента. Мне это удалось! Раньше код проходил примерно 120 000 раз в каждом фрейме, а сейчас их меньше 700, обрабатывается только необходимые элементы интерфейсы. Я имею в виду, что когда вы смотрите на древа технологий, мы не обрабатываем скрытые окна производства, кнопки и т.д.

                      Как я и говорил, мы всё ещё работаем над производительностью в лейтгейме. Пока что я потратил на неё всего лишь полторы недели, но уже добился многого, так что вы можете ожидать подобных улучшений в следующих патчах

                      Для просмотра ссылки Зарегистрируйесь
                        • 9 Страниц
                        • Первая
                        • 5
                        • 6
                        • 7
                        • 8
                        • 9

                        Лента Новостей

                        Введите ваши имя форумчанина и пароль:

                        Введите Ваше имя  
                        [Регистрация нового аккаунта]
                        Введите Ваш пароль 
                        [Восстановить пароль]

                        Не стесняйся, общайся -


                        Воспользуйтесь одной из социальных сетей для входа на форум:


                        Внимание: Реклама отключена для зарегистрированных посетителей

                          Стиль:
                            28 Мар 2017, 05:34
                        © 2017 «Империал». Условия предоставления. Ответственность сторон. Рекрутинг на Империале. Лицензия зарегистрирована на: «Империал». Счётчики