Garry's Mod

Garry's Mod

102 ratings
Как Cделать Cвоего Nextbot?
By sralasobaka
добавляйте в др если что помогу

Если вам помогло руководство то отблагодарите меня лайком положительным комментом или наградой пж
   
Award
Favorite
Favorited
Unfavorite
➥ Нужные Программы
Notepad++ [notepad-plus-plus.org] -- Не обязателен, но с ним будет красивый текст кода.

Audacity [www.audacityteam.org] -- Нужен для добавления звуков.


➥ Получение Шаблона
В качестве шаблона возьмем вот этот аддон: https://steamproxy.net/sharedfiles/filedetails/?id=619686973

Подписуемся на аддон и заходим в игру, что-бы аддон прогрузился и его файл появился в корневой папке игры, ждем как аддон загрузится в меню, после чего можем ливать из игры, переходим в корневую папку игры, по этому пути:(E:\SteamLibrary\steamapps\common\GarrysMod\garrysmod\addons)

Находим в папке файл gma формата с названием merio_snpc_619686973.gma (цифры не такие, они у всех разные), снова открываем корневую папку игры(не закрывая предыдущую папку addons), переходим в папку "bin" она располагается по этому пути:
E:\SteamLibrary\steamapps\common\GarrysMod\bin)E:\SteamLibrary\steamapps\common\GarrysMod\bin)

Находим файл gmad.exe и переносим мышкой в него недавно созданный файл merio.gma, программа начнем распаковывать аддон, после распаковки снова переходим в addons и находим распакованную папку аддона "merio_snpc_619686973".

➥ Настройка Lua
Начнем с самого важного, нажимаем на "Правка" сверху блокнота, и "Заменить" вылазит панель, там где "Что" пишем "merio", а там где "Чем" пишем айди вашего некстбота (Обязательно писать нужно на англ.языке), после чего нажимаем на "Заменить все".
(Если вы используете Notepad++, то нажимаем "Поиск" и "Замена", вместо "Чем" здесь "Найти", "Чем" это "Заменить на")

    Спускаемся в самый низ файла и находим это, заменяем под себя.
  • Name = Это имя в меню спавна NPC.
  • Class = Не трогаем этот пункт.
  • Category = Категория в "NPC".
  • AdminOnly = При "True" только создатель сервера может спавнить бота, а при "false" абсолютно любой игрок сервера.

    Поднимаемся и находим строку:
  • killicon.Add("npc_название_некстбота", "название_некстбота/npc_название_некстбота_killicon", color_white)
  • language.Add("npc_название_некстбота", "название_некстбота") Это имя некстбота при убийстве кого-либо справа сверху, заменяем на свое.


➥ Настройка характеристик бота
Поднимаемся на самый вверх и находим:
1. local npc_название_некстбота_acquire_distance = CreateConVar("npc_название_некстбота_acquire_distance", 2800, bit.bor(FCVAR_GAMEDLL, FCVAR_DEMO, FCVAR_SERVER_CAN_EXECUTE), = Дистанция виденья игрока, оригинально 2800

2. local npc_название_некстбота_spawn_protect = CreateConVar("npc_название_некстбота_spawn_protect", 1, bit.bor(FCVAR_GAMEDLL, FCVAR_DEMO, FCVAR_SERVER_CAN_EXECUTE) = Не трогайте этот пункт, т.к из-за него не будет ничего работать.

3. local npc_название_некстбота_attack_distance = CreateConVar("npc_название_некстбота_attack_distance", 50, bit.bor(FCVAR_GAMEDLL, FCVAR_DEMO, FCVAR_SERVER_CAN_EXECUTE) = Радиус атаки некстбота (Оригинально 50)

4. local npc_название_некстбота_attack_interval = CreateConVar("npc_название_некстбота_attack_interval", 0.2, bit.bor(FCVAR_GAMEDLL, FCVAR_DEMO, FCVAR_SERVER_CAN_EXECUTE) = Задержка между атаками некстбота (Оригинально 0.2)

5. local npc_название_некстбота_attack_force = CreateConVar("npc_название_некстбота_attack_force", 800, bit.bor(FCVAR_GAMEDLL, FCVAR_DEMO, FCVAR_SERVER_CAN_EXECUTE) = Физическая сила атаки, более высокие значения отбрасывают вещи дальше (Оригинально 800)

6. local npc_название_некстбота_smash_props = CreateConVar("npc_название_некстбота_smash_props", 1, bit.bor(FCVAR_GAMEDLL, FCVAR_DEMO, FCVAR_SERVER_CAN_EXECUTE) = При выставлении 0 некстбот не сможет ломать ящики, и прочии пропы.

7. local npc_название_некстбота_hiding_scan_interval = CreateConVar("npc_название_некстбота_hiding_scan_interval", 3, bit.bor(FCVAR_GAMEDLL, FCVAR_DEMO, FCVAR_SERVER_CAN_EXECUTE) = "npc_testnextbot будет искать укрытия только каждые X секунд. Это может быть дорогостоящей операцией, так что это не "рекомендуется слишком понизить это значение. Однако, если далекие некстбот не прячутся от вас достаточно быстро, " ..
Вы можете рассмотреть возможность снижения этой небольшой суммы.


➥ Прочее
• 1. Изменение скорости некстботу:
Находим такую строчку: "self.loco:SetDesiredSpeed(game.SinglePlayer() and 600 or 500)", для изменения скорости измените цифры в конце.

• 2. Изменения текста, когда некстбот не находит сетку nav_mesh:
Спускаемся на 904 строчку, и находим это:
local function navWarning() -- Сообщение при отсутствии сетки nav_mesh на карте.
net.Receive("название_некстбота_nag", function() -- Особое сообщение появляющееся в мультиплеерной игре.
Что-бы изменить ответы, меняем текст в скобках под основным сообщением.

• 3. Изменение радиуса слышимости panic'a:
Ищем 940 строчку и находим это: "local MUSIC_PANIC_DISTANCE = 200", экспериментируйте, но при изменении дистанции происходит баг, panic не становится тише если некстбот отходит от вас.

• 4. Переименование файлов звука:
Нажимаем правка, заменить, пишем название которое хотим заменить (Допустим jump) и чем хотим заменить, после чего сохраняем и переименовуем звук в sounds.

➥ Работа с Materials
Заходим в meterials/merio, закидуем туда свою текстуру некстбота и удаляем предыдущую текстуру "npc_merio.png", вашу текстуру называем так: npc_название_некстбота.
(P.S) Расширение картинки должно быть минимум 1024х1024! После этого называем папку в которой это делается в айди вашего некстбота (без npc)

➥ Entitles
В папке materials находим entities, это иконка некстбота в спавн меню, кидаем картинку, переименовуем в npc_название_некстбота и все, размер должен быть минимум 512х512.


➥ Killicon
Для этого нам нужна программа VTFedit, заходим в нее, импортируем в нее нужную вам картинку (Убедитесь что текстура имеет формат 64x64, иначе килликонка будет очень большой и некрасивой), ищем категорию "Advanced", и выбираем Version 7.2", после чего нажимаем OK
Сохраняем ее через Save as в том-же "File", кидаем в папку materials\название_некстбота, делаем название npc_название_некстбота_killicon, дальше заходим в vmt файл, видим следующее:
"UnlitGeneric"
{
"$basetexture" "название_некстбота/npc_название_некстбота_killicon" -- Путь к килликонке.
"$translucent" 1 -- Это можно удалить.
"$vertexalpha" 1 -- Это можно удалить.
}
Заменяем на название вашего бота, сохраняем и тестируем.
➥ Работа со звуками
Заходим в папку sound, в ней находится еще одна папка, которую переименовуем в айди некстбота, после чего заходим в нее, здесь находятся все звуки, значение каждого из них:
• panic - Основная музыка бота
• jump - Прыжок
• spring - Высокий прыжок
• pieceofcake - Звук убийство игрока
• stepitup - Звук убийство игрока
• tooeasy - Звук убийство игрока
• tooslow - Звук убийство игрока

Для того что-бы заменить свой звук, понадобится программа «Audacity» ссылку на которую я оставлял в самом первом разделе, уже в программе нажимаем «Файл», «Открыть» выбераем нужный звук, после чего снова нажимаем «Файл», и «Экспорт» экспортируем в мп3, ставим постоянный режим, ставим качество 96-кб, с другим качеством звуки просто не будут работать, пишем в имя файла название звука выше(jump, panic, tooeasy), заменяем звук в папке со звуками.

106 Comments
PRAISING THE SUN 23 Sep @ 7:19pm 
━━━━╮ Это Мемопёс. Помогите
╰┃ ┣▇━▇ Мемопсу прокатиться
 ┃ ┃  ╰━▅╮ через гайды в стим вставляя
 ╰┳╯ ╰━━┳╯ его в другие
  ╰╮ ┳━━╯ гайды иначе он
 ▕▔▋ ╰╮╭━╮ не станет псом-мемом
╱▔╲▋╰━┻┻╮╲╱▔▔▔╲
▏  ▔▔▔▔▔▔▔  O O┃
╲╱▔╲▂▂▂▂╱▔╲▂▂▂╱
 ▏╳▕▇▇▕ ▏╳▕▇▇▕
 ╲▂╱╲▂╱ ╲▂╱╲▂╱
Hydro. 18 Sep @ 6:45am 
Для тех, у кого не работает звук, при экспорте в Audacity смените постоянный режим на переменный.
VladHD 13 Sep @ 6:28am 
Сделай новое руководство о том как сделать некстботов, но без папки Addons
Big Heavy Gun 26 Aug @ 10:56pm 
Сделал по гайду, звук не работает. Заработал только звук panic, когда поменял формат на .wav, с другими файлами так не сработало
MardiKZ 11 Jul @ 4:26pm 
что делать с файлом паник? Убил 2 часа ничего не помогает
iquldev 12 Jun @ 2:35am 
ребят ставьте частоту 44100 и качество 96кб и звук будет работать
Администрация 1 May @ 1:41am 
хелпу пж
Администрация 1 May @ 1:38am 
баля проблема со звуком крайне актуальная. Я сделал все как сказано 96-кб и 48000 частота все равно не помогло. Возможно проблема в коде lua, но я так глазами пробежался сравнил с другими ниче не понял. Крч некст бот спавнится, но звука нет
W0LfeR_5012 10 Feb @ 1:56am 
пора создать так называемого "Евгeй Бро":missing:
Arigadam 7 Feb @ 10:35pm 
╰┃ ┣▇━▇ Мемопсу прокатиться
 ┃ ┃  ╰━▅╮ через гайды в стим вставляя
 ╰┳╯ ╰━━┳╯ его в другие
  ╰╮ ┳━━╯ гайды иначе он
 ▕▔▋ ╰╮╭━╮ не станет псом-мемом
╱▔╲▋╰━┻┻╮╲╱▔▔▔╲
▏  ▔▔▔▔▔▔▔  O O┃
╲╱▔╲▂▂▂▂╱▔╲▂▂▂╱
 ▏╳▕▇▇▕ ▏╳▕▇▇▕
 ╲▂╱╲▂╱ ╲▂╱╲▂╱