Inicio>código fuente JSP>Otras categorias

Garrysmod Lua Dumper & Runner, escrito en Rust.

Características

? Uso

? Complemento de menú

La ejecución automática también se puede utilizar como complemento de menú/se requiere de lua automáticamente desde el estado del menú.

  1. Coloque el archivo dll gmsv_autorun_win<arch>.dll en su carpeta garrysmod/lua/bin .
  2. Agregue require("autorun") en la parte inferior de garrysmod/lua/menu/menu.lua
    Ahora se ejecutará automáticamente cuando garrysmod se cargue en el menú.

? inyectando

El método tradicional (pero más inconveniente) para usarlo es simplemente inyectarlo.

  1. Obtenga un inyector (asegúrese de que sea compatible para inyectar código de 32/64 bits según su uso).
  2. Inyecte el dll en gmod mientras está en el menú

gancho de guión

La ejecución automática incluye scripthook, lo que significa que ejecutaremos su script antes de que se ejecute cualquier otro script de garrysmod para verificar si desea que el código se ejecute ejecutando su propio script de gancho. *Esto se ejecuta en un entorno separado de _G , por lo que para modificar los globales, haga _G.foo = bar

También tenga en cuenta que si está ejecutando autorun.lua funciones como http.Fetch y file.Write no existirán.
Utilice sus homólogos en C ( HTTP y file.Open )

Vea un proyecto de ejemplo usando el scripthook aquí.

? Estructura de archivos

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
└── ...

?️ Campos

Puede encontrar lo que se pasa al entorno scripthook en campos.lua como un archivo de definiciones EmmyLua.
¿Esto podría usarse con algo como una extensión de servidor de lenguaje vscode lua para intellisense?

✍️ Ejemplos

gancho.lua
Este archivo se ejecuta antes de que se ejecute cada script lua en su cliente desde complementos y servidores. Puede return true para no ejecutar el script o una cadena para reemplazarlo.

 -- 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

Puedes encontrar más aquí

Descargando

? Estable

Puede obtener una versión "estable" de las versiones.

? Borde sangrante

Puede obtener la última descarga absoluta (desde el código en el repositorio) en la pestaña Acciones de Github
Tenga en cuenta que es posible que no funcione como se esperaba (pero le recomiendo probar esto antes de intentar informar un problema para ver si se ha solucionado).

Si está utilizando esto como complemento de menú, asegúrese de que la DLL se llame gmsv_autorun_win<arch>.dll

Edificio

Es posible que desee crear esto usted mismo si desea realizar cambios/contribuir (o no confiar en las acciones de github por cualquier motivo...)

  1. Configurar óxido y carga
  2. Utilice build_win_32.bat o build_win_64.bat .
Expandir
Información adicional