Главная страница>Исходный код JSP>Другие категории

Garrysmod Lua Dumper & Runner, написанный на Rust.

Функции

? Использование

? Плагин меню

Autorun также может использоваться как плагин меню / автоматически требоваться от lua из состояния меню.

  1. Поместите файл dll gmsv_autorun_win<arch>.dll в папку garrysmod/lua/bin .
  2. Добавьте require("autorun") внизу garrysmod/lua/menu/menu.lua
    Теперь он будет запускаться автоматически при загрузке garrysmod в меню.

? Инъекция

Традиционный (но более неудобный) метод использования — просто ввести его.

  1. Получите инжектор (убедитесь, что он совместим для ввода 32/64-битного кода в зависимости от вашего использования).
  2. Вставьте dll в gmod, пока вы находитесь в меню.

Скриптхук

В автозапуске имеется функция scripthook, что означает, что мы запустим ваш сценарий до выполнения любого другого сценария garrysmod, чтобы проверить, хотите ли вы, чтобы код запускался путем запуска вашего собственного сценария-перехватчика. *Это выполняется в отдельной среде от _G , поэтому для изменения глобальных переменных выполните _G.foo = bar

Также обратите внимание, что если вы используете autorun.lua такие функции, как http.Fetch и file.Write не будут существовать.
Используйте их аналоги C ( HTTP и file.Open )

См. пример проекта с использованием scripthook здесь.

? Структура файла

C:Users < User > autorun
├── autorun . lua # Runs *once* before autorun
├── hook . lua # Runs for every script
├── lua_dumps # Each server gets a folder with their IP as the name.
│   ├──  192.168.1 . 55_27015
│   └── X . Y . Z . W_PORT 
├── logs # Logs are saved here
│   └── YYYY - MM - DD . log
├── bin # Store binary modules to be used with Autorun.requirebin
│   └── gmcl_vistrace_win64 . dll
├── plugins # Folder for Autorun plugins, same behavior as above autorun and hook.lua, but meant for plugin developers.
│   └── Safety
│       ├── src
|       |   ├── autorun . lua
|       |   └── hook . lua
│       └── plugin . toml
├── settings . toml # See autorun/src/configs/settings.toml
└── ...

?️ Поля

Вы можете найти то, что передается в среду scripthook, в field.lua в виде файла определений EmmyLua.
Это можно использовать с чем-то вроде расширения языкового сервера vscode lua для intellisense?

✍️ Примеры

крюк.lua
Этот файл запускается перед запуском каждого сценария lua на вашем клиенте из надстроек и серверов. Вы можете return true чтобы не запускать сценарий, или строку, чтобы заменить его.

 -- Replace all 'while true do end' scripts with 'while false do end' ?
local script = Autorun . CODE
if script : find ( " while true do end " ) then
	Autorun . log ( " Found an evil script! " )
	return string . Replace ( script , " while true do end " , " while false do end " )
end

Вы можете найти больше здесь

Загрузка

? Стабильный

Вы можете получить «стабильный» релиз из релизов.

? Кровоточащая грань

Вы можете получить самую последнюю загрузку (из кода в репозитории) на вкладке «Действия» Github.
Обратите внимание, что это может работать не так, как ожидалось (но я бы посоветовал попробовать это, прежде чем пытаться сообщить о проблеме, чтобы узнать, исправлена ​​ли она).

Если вы используете это как плагин меню?, убедитесь, что DLL называется gmsv_autorun_win<arch>.dll

Здание

Возможно, вы захотите создать это самостоятельно, если хотите внести изменения/внести свой вклад (или по какой-либо причине не доверяете действиям github).

  1. Настройка Rust & Cargo
  2. Используйте build_win_32.bat или build_win_64.bat .
Расширять
Дополнительная информация