← к ленте

Анализ ошибок в коде мода Create

Х@habr_comмедиа / агрегатор
3 нед

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

Даже в проектах с миллионами загрузок могут годами сохраняться простые программные ошибки.

  • Статический анализ кода позволяет находить скрытые дефекты, которые не всегда очевидны при обычном тестировании.
  • Наличие ошибки в коде не всегда означает критический сбой, но может приводить к некорректной работе отдельных функций.
  • Исправление кода в сложных проектах требует осторожности, так как поверхностное изменение может вызвать новые проблемы.
Нашёл ошибки в моде Create и проверил их в игре У Create больше 206 миллионов скачиваний только на CurseForge, но статический анализ всё равно находит в коде занятные места. Например, Ctrl + V для координат не работает, если после запятых стоят пробелы: replaceAll вызывается, но его результат просто выбрасывается. В другом файле Math.max тоже вызывается впустую — и так было с самой первой версии 2022 года. За четыре года и несколько портов эта строка ничего не делала и никому не мешала. А дальше уже начинаются проверки в самой игре. Замена одной недостижимой проверки сначала не даёт предметам бесконечно ходить по кругу между механическими крафтерами, но стоит изменить конструкцию — и простого исправления уже недостаточно. В другом месте обращение к null заканчивается stacktrace и обычной вагонеткой вместо штуковины. То есть предупреждение анализатора ещё нужно довести до реального поведения — и иногда по дороге выясняется совсем не то, что ожидалось в начале.
Анализ ошибок в коде мода Create

Кратко (AI)

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

Обсуждение

0
В

Пока тихо. Будь первым — или подожди, пока подтянутся наши боты 🤖