Найти тему

Как защитить свой Unity проект.

Оглавление

Здравствуйте, за клавиатурой Адск.

Сегодня я вам расскажу и покажу, как защитить свой Unity проект от двух типов людей: "читеров", "любителей полазить в коде".

Для начала скажу, что для этого нужно скачивать то, что я вам покажу, без этого никак.

1. Изменение режима "скриптового бэкенда".

  • Для чего это нужно?

Изменение режима скриптового бэкенда обязательная часть нашей безопасности для игры. Так же это может легко вставить некоторые "палки в колеса" читерам.

  • Как это повлияет?

Скриптовой бэкенд "Mono" более старый метод для сохранения ваших скриптов в несколько "ассемблеров", которые могут просто-на-просто "вскрыть" и посмотреть ваш код специальной программой, которая не требует представления.

  • Как это сделать?

Для начала: вам необходимо скачать нужные ресурсы из Visual Studio Installer, это: "Разработка игр с помощью Unity" и еще это:

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

Сделать это можно в Player Settings.

-2
-3

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

2. Шифруем код.

  • Что это такое?

Обфускатор – это программа которая в автоматическом режиме запутывает ваш код делая его не читабельным, удаляет все ваши комментарии, переименовывает переменные.

Источник определения

  • Для чего это нужно?

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

Но перед тем, как смотреть на ассеты, которые я вам покажу, обратите своё внимание, что делает обфускатор с вашим кодом после постройки вашей игры:

-4

Красота, не так ли? Особенно это понравится тем, кто постарается прочитать ваш код.

Перейдем к ассетам. Есть пару вариантов.

Бесплатный обфускатор с кучей настроек: https://assetstore.unity.com/packages/tools/utilities/obfuscator-free-89420

Платный, но более хороший обфускатор: https://assetstore.unity.com/packages/tools/utilities/obfuscator-48919

80 долларов для каждого разработчика слишком много, но всегда не поздно, кому надо, поднять паруса и поднять якорь.

Перейдем к другому методу.

3. Анти-чит.

Все из читеров их обходят, но есть некоторый ассет для Unity, который хорошо может вам понадобиться.

Для начала покажу вам методы анти-чита:

  1. Шифрация сохраняемых значений. Это помогает для того, чтобы читер не мог менять сохраняемые значения без ведома вашей игры, или просто, чтобы он не понимал, что за значения сохраняет игра. Пока что от этого не нашли толковый метод.
  2. Шифрация значений полей. Помогает шифровать значения полей в памяти, чтобы такие программы как Cheat Engine и подобные, что копаются в памяти и изменяют, не могли понять, что игра в себе держит во время нахождения игры.
  3. Детектор изменения скорости игры. Изменяют скорость игры многие, и для этого им не нужно значение скорости игрока, а просто встроенный функционал в ПО.
  4. Проверка на лишние папки в директории игры. Очень помогает. Можно вполне себе заскриптовать самим.

Все эти методы анти-чита хорошо могут прикрыть тыл вашей игры. Так же я нашел хорошие ассеты для вас.

Бесплатный анти-чит (не имеет в себе детектора изменения скорости игры):

Anti Cheat Free | Utilities Tools | Unity Asset Store

Платный, но больше функционала:

Anti-Cheat Toolkit 2021 | Utilities Tools | Unity Asset Store

4. Упаковка игры в единый файл.

Если ваша игра содержит множество файлов, или если вы ее передаете в упакованном zip файле, то представляю вам бесплатный софт "Enigma Virtual Box", в ней вы можете упаковать вашу игру в единый исполняемый .exe файл.

Однако от этого есть единственный минус - ваша Windows 10 будет выдавать вот такое окно с предупреждением:

-5

Заключение.

На этом все, я вам показал все, что я хотел, и что я знаю, и то, чем я хотел поделиться.

Благодарю вас за внимание, надеюсь вам это чем-то помогло, и что-нибудь вы смогли познать новое.

Прощайте, великие разработчики игр.