Пятничные факты #80. Сосредоточимся на 0.12.

Это перевод статьи с официального сайта. Вот тут Вы можете прочитать оригинал.
Автор перевода: Максим Виноградов
Оригинал статьи: factoriogame.blogspot.ru

Сумасшедшее начало.

Привет-привет!

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

0.11.20
Вышла последняя версия 0.11.20! (примечание: перевод новости об этой версии Вы можете прочитать вот в этой статье). Эта версия — кандидат в стабильные! Она сделана по настоящему хорошо. Если никаких серьезных проблем не обнаружится, то мы объявим версию 0.11 стабильной. Если же нет — придется проглотить свою гордость, исправлять все ошибки и попытаться снова!

 

Автоматизация работы

0.11.20 был первый релиз полностью сделанный на нашем новом сервере. Blue cube работал над этим некоторое время и вот теперь множество вещей может делаться одновременно. Сервер сейчас способен делать такие вещи:

  • компилирует игру для всех поддерживаемых систем (винда, линукс, маки).
  • запускает тесты этих сборок.
  • создает установочные пакеты для скачивания
  • создает пакеты для обновления игры
Последнее, чего не хватает — большой красной кнопки, чтобы запускать выпуск нового релиза 🙂
Сейчас все еще приходится вручную загружать пакеты с обновлениями на сервера S3. Следующий шаг, который Cube уже почти сделал — это отказ от Amazon S3 и переход на виртуальный сервер Linode для хранения загружаемых данных игры. В общем, мы создаем свой простой CDN. Как ни крути, это будет лучше:
  • возможность быстрее скачать для игроков
  • уменьшение стоимости для нас.

Разработка Ракет

В тоже время мы продолжаем работу над версией 0.12. Robert работает над объединением космодрома и ракеты. Наиболее сложный здесь момент — анимация запуска ракеты. С этим связано несколько трюков, а именно:
  • Ракета в основном движется по оси «Z», т.е. летит вверх. Движок factorio не может это сделать. Нам приходится симулировать движение ракеты перемещением по оси «Y». А с этим связано много вопросов: Что должно происходить, если игрок побежит на север в погоне за ракетой? Как должна себя вести тень ракеты? Мы же не можем просто отразить тень на землю. Как ракета будет взаимодействовать с летающими роботами?
  • Космодром является на данный момент крупнейшей постройкой в игре (10 х 10 тайлов). Поэтому требуется переработка алгоритма рисования, который работает только с теми зданиями, центр которых в данный момент на карте. Центр космодрома не попадает в этот диапазон (размер карты + 4 тайла), следовательно он может вдруг стать невидимым, когда на самом деле его края находятся на карте и должны быть нам видны. Фишка тут в том, что нужно сделать код, занимающийся обрисовкой настолько производительным, насколько это возможно (десятки тысяч объектов могут быть на экране).
  • Анимация запуска ракеты очень сложная. В нее входит 12 роликов со множеством слоев. Придется хорошо поработать, чтобы все сделать правильно, ведь наш движок просто не готов к таким эффектам.
  • Мы используем новомодные светящиеся эффекты для прорисовки огня ракеты и они бросают своеобразные тени на окружение космодрома.
Как обычно, сделать все это получается гораздо сложнее, чем ожидалось…

Усиление команды

В последние пару недель мы усиленно пытались найти несколько хороших C++ программистов. В результате мы взяли нового члена команды на испытательный срок. Его зовут Martin, сейчас он учится в местном универе. Если он останется с нами, то ему придется тратить половину своего времени на factorio. Его первая задача — работа над сигналами, вернее, как мы их называем — цепями сигналов. Они будут работать не так, как сигналы в OpenTTD. Мы обязательно поделимся деталями и примерами, когда работа будет сделана, а это ожидается уже скоро.
Albert одичал и сделал небольшой смешной Пасхальный постер (возможно, кого-то это вдохновит на создание мода):
Тема для Ваших комментариев и мнений как всегда на нашем форуме.

Comments:

Добавить комментарий