- пол
- M
- Страна
- Соединённые Штаты Америки
Я получил много запросов на учебник, как сделать Меню MOD но не успел и почти забыл. Я должен был приостановить все свои другие защиты и сразу же начать работать с этим уроком.
Доступно Меню MOD, он позволяет игроку выбирать, какие хаки использовать. Меню MOD может быть полезным в многопользовательских играх, когда игрок может быстро включать и отключать хакерские игры, чтобы об этом не сообщали легальные игроки
Итак, начнем.
Требования:
- базовый опыт моддинга Unity
- знакомый с C # и dnSpy
- dnSpy установлен на вашем компьютере
- Unity редактор установлен на вашем компьютере
- Visual Studio 2017 установлен на вашем компьютере (необязательно.)
Установка редактора Unity:
Сначала создайте учетную запись или войдите с помощью Google или Facebook на Unity
Перейдите на Единство - Магазин и выберите «Попробовать лично». Это совершенно бесплатно. Скачайте и установите его. Если вы хотите, чтобы Visaul Studio 2017 была установлена, обязательно выберите ее в установщике. Если не установлен, вы будете использовать MonoDevelop.
Настройка редактора Unity:
Запустите Unity, войдите в свою учетную запись и заполните анкету. После этого вы можете создать новый проект. Назовите его, как хотите, и оставьте выделенным 3D. Нажмите "Создать проект".
Панель управления запустится.
Создайте новый скрипт C #:
Нажмите на Активы -> Создавай -> C # скрипт или щелкните правой кнопкой мыши на разделе проекта Создавай -> C # скрипт
Перетащите сценарий и поместите поверх Основная камера ниже Без названия чтобы убедиться, что ваш сценарий показан на игровой сцене.
Разработка и тестирование GUI:
Наконечник: Во время программирования вы можете нажать кнопку воспроизведения и редактировать код во время игры. Редактор будет зависать некоторое время, когда вы откроете его.
Удалите методы Start () и Update () и добавьте метод OnGUI () следующим образом:
C #:
public class ModMenuScript : MonoBehaviour {
void OnGUI() {
}
}
Код:
public bool hack1;
public string string1;
public bool ShowHide = false;
C #:
GUI.Button(new Rect(20, 20, 160, 20), "SHOW/HIDE"
Добавьте оператор if на кнопку GUI с оператором, чтобы вы могли скрыть / показать меню, нажав на кнопку
C #:
if (GUI.Button(new Rect(20, 20, 160, 20), "SHOW/HIDE"))
{
ShowHide = !ShowHide;
}
C #:
if (ShowHide)
{
}
C #:
GUI.Box(new Rect(20, 50, 170, 150), "iAndroHacker's mod menu");
C #:
if (GUI.Button(new Rect(25, 80, 160f, 30f), string1))
{
hack1 = !hack1;
}
C #:
if (hack1)
{
string1 = "Unlimited health <color=green>ON</color>";
hack1 = false;
}
else
{
string1 = "Unlimited health <color=red>OFF</color>";
hack1 = true;
}
Шаблон скрипта: ModMenuScript.cs · master · iAndroHacker / unity-mod-menu · GitLab
Смотрите некоторые полезные документы:
Стилизованный текст: Unity - Руководство: Rich Text
GUI немедленного режима (IMGUI): Unity - Руководство: Rich Text
Добавление мод меню в файл assembly-sharp.dll:
Это сложная часть, потому что есть много способов добавить свой собственный код, например, добавить метод OnGUI в любые классы (Загрузка, LoadingScreen, MainMenu и т. Д.) Или добавить код в существующие методы OnGUI.
Метод 1: добавление метода OnGUI
В этом примере я создам OnGUI и добавлю свой код в UserInterfaceManager в Super Dungeon Bros.
Найдите активный класс или выполните поиск «Загрузка» и выберите один из способов загрузки. В моем примере я выбрал DisplayLoadingScreen, расположенный в UserInterfaceManager. Щелкните правой кнопкой мыши UserInterfaceManager и создайте метод.
Примечание: Убедитесь, что у класса есть метод Instance. Если у него нет экземпляра, вы должны создать свой собственный класс
Назовите его OnGUI и нажмите ОК.
Щелкните правой кнопкой мыши на OnGUI (); и редактировать метод
Удалите extern и измените код так, чтобы он выглядел так:
C #:
public void OnGUI() {
}
Удалите модификатор "static", если Меню MOD не появляется
Метод 2: создайте новый класс для GUI
Добавить класс в пустое пространство имен
Добавьте весь код и назовите свой класс. Убедитесь, что вы добавили что такое варган? и статический модификатор, как показано ниже, чтобы другие классы могли получить доступ к полям. ВАШЕ Имя метода не должно называться OnGUI, называть его MyGUI или как угодно. Это делается для того, чтобы избежать путаницы с другим OnGUI, поскольку Unity всегда что-то читает, если распознает методы OnGUI.
Пример:
C #:
public void OnGUI()
{
ModMenuScript.OnGUI(); //makes problem
}
Сохранить класс. Иногда dnSpy не может найти созданный вами класс, поэтому вам нужно сохранить сборку как Assembly-Csharp1.dll или любую другую, закрыть все библиотеки и открыть Assembly-Csharp1.dll
Для того, чтобы ваш Меню MOD появиться в игре, найти активный класс или выполнить поиск «Загрузка» и выбрать один из методов загрузки, создать метод OnGUI и отредактировать код, например:
C #:
public void OnGUI()
{
ModMenuScript.MyGUI();
}
Теперь найдите некоторые функции для взлома. Если вы добавили OnGUI в существующий класс с методом Instance, измените код следующим образом:
(Я изменяю этот метод получения в качестве примера)
C #:
public float ArmorCapacity
{
get
{
if (UserInterfaceManager.Instance.hack1)
{
return 999f;
}
return this._armorCapacity;
}
set
{
}
}
C #:
public int get_SupplyCost()
{
if (ModMenuScript.hack1)
{
return 999;
}
return this.UnitInstance.SupplyCost;
}
Сохраните файл dll и протестируйте свой Меню MOD
Пример видео: Bandicam 2018-01-26 18-59-25-119 - Streamable
Кредит:
iAndroHacker
Последнее редактирование: