Пятничные факты #235 – Версия 0.16 стабильная

Поделиться

Версия 0.16 объявлена  стабильной

Rseding думает, что у нас сейчас наименьшее количество ошибок в игре, которое мы когда-либо имели. В основном из-за автоматизированной системы отчетности и отчасти из-за того, что я давлю на всех, чтобы исправить все до начала других задач. 0.16.35 (будет выпущен в ближайшее время) будет объявлен стабильным в понедельник, если не будут обнаружены критические проблемы.

Это, естественно, приводит нас к:

0.17 план

Основные нововведения 0,17:

  • Мини-гайды в игре (kovarex, Twinsen, Albert, wheybags).
    Мы хотели бы  улучшить качество обучающих материалов на основе наших первых попыток и охватить остальную часть игровой механики.
  • Улучшенная кампания «Первые шаги» и новая основная кампания (v453000, Albert, wheybags, Ben).
  • Будет переписано Gui . (Twinsen, kovarex, Dominik, Albert).
    Будет улучшено внешний вид графического интерфейса и меняет способ его работы. Некоторые из проектов были опубликованы в FFF-212 и FFF-191.
  • Новые графические интерфейсы, SDL, OpenGL, DX11, исправление v-sync, потоковая передача текстур, оптимизация использования VRAM, шейдеры (posila, HanziQ, sindri, wheybags).
  • GUI дерева рецептов (Oxyd).
    Это должно быть основой какой-то игровой факториопедии. Он должен предоставить игроку быстрые способы получить ответ на такие вопросы, как: «Для чего этот предмет?» и «Каков график зависимостей рецептов для этого».
  • Улучшение интеграции модов (HanziQ, Rseding).
    В основном расширить возможности синхронизации модов с сохранением от сохранения загрузки до многопользовательской игры, улучшения в режиме просмотра модов, которые должны по крайней мере показывать изображение мода и более мелкие вещи.
  • Улучшения в редакторе карт, как технические, так и удобные в использовании (Rseding).
  • Улучшения и исправления генератора карт, усовершенствования спецификаций автозапуска и документация (TOGoS).
  • Спрайты высокого разрешения для остальной части игры, включая несколько изменений для некоторых объектов (GFX).
  • Финальная балансировка игры (kovarex, v453000, Twinsen).

Возможно:

  • Spidertron (kovarex, GFX) ну когда там уже
  • Лучшая обработка автомобиля и автомобиль в состоянии ожидания (Dominik)
  • Лучшая физика жидкости
  • Организация тестирования для нового графического интерфейса, кампаний и руководств перед выпуском.

Большие планы

0.17 является кандидатом 1.0, но из-за всех новых переписываний (новый графический интерфейс, новая графика, новые учебные пособия, новые кампании) очень вероятно, что нам понадобятся непредвиденные изменения. Таким образом, 0.18 должен быть довольно коротким выпуском, где мы отполируем графический интерфейс и кампанию на основе отзывов игроков, а также исправим любые окончательные или давние ошибки, возможно, устраняем давние незначительные проблемы, и как только он станет стабильным, он будет объявлен 1.0,

Странные отчеты об ошибках  (Rseding91)

В 0.16.31 мы выпустили исправление ошибок для конкретного модифицированного сценария, который включал в себя тяжелый рефакторинг логики игры, который проверял, может ли элемент быть помещен в данный объект. Как только 0,16.31 был запущен, мы начали получать необычное количество отчетов о сбоях внутри логики Furnace :: canInsert (…), которая не имела никакого смысла. Я подумал, что, может быть, мое исправление как-то сломало логику печи, но я не мог понять, как это возможно.

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

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

Когда 0,16.33 вышло  число сбоев в Furnace :: canInsert (…), упали примерно в 15 раз. Мы ничего не изменили, как это работает, и как-то он рушился меньше. После некоторого дальнейшего обсуждения этим утром мы считаем, что у нас есть правдоподобное объяснение того, что происходит:
Кто-то, вероятно, использовал что-то похожее на Cheat Engine, чтобы обмануть, изменив выполнение программной памяти. Исправляя ошибку, я реорганизовал, как Furnace :: canInsert (…) работает достаточно, чтобы исполняемый файл теперь крашился, что когда-либо делал сценарий чит-движка. Когда мы выпустили новые версии, люди, использующие этот скрипт, перестали использовать его, потому что он крашил их игру, и поэтому мы перестали получать отчеты о сбоях.

Как всегда, дайте нам знать, что вы думаете на нашем форуме


Поделиться

Комментарии: