Otevři složku addonu
Nejdřív vlastnoručně vytvoř garrysmod/addons/welcome a pak tuto složku vyber jako pracovní složku.
Chatový příkaz !hello na tvém vlastním serveru je nejmenší užitečný addon. Je to čisté skriptování Lua pro GMod v 1 souboru na straně serveru a ukazuje, jak vytvořit addon do GMod od prázdné složky až po otestovaný výsledek. Agent ho napíše. Ty ho zkontroluješ.
Nejdřív vlastnoručně vytvoř garrysmod/addons/welcome a pak tuto složku vyber jako pracovní složku.
Obyčejnými slovy napiš, co má addon dělat, například odpovědět na chatový příkaz !hello jménem hráče.
Pracuj v Ask first. Přečti si kartu souboru a diff pro sv_welcome.lua a klikni na Přijmout nebo Odmítnout.
Spusť hru pro více hráčů na lokálním testovacím serveru, připoj se, napiš příkaz do chatu a než to prohlásíš za hotové, přečti si konzoli kvůli chybám Lua.
lua/autorun/servervytvořenolua/autorun/server/sv_welcome.luauloženolua/autorun/server/sv_welcome.lua12 řádkůPlayerSay1 shodayour server launch scriptexit 0-- sv_welcome.lua: answer the !hello chat command
-- Runs on the server only (lua/autorun/server/).
local command = "!hello"
hook.Add("PlayerSay", "Welcome_Hello", function(ply, text)
if string.lower(text) == command then
local name = ply:Nick()
ply:ChatPrint(string.format("Hello, %s!", name))
return ""
end
end)Jen na straně serveru. hook.Add připojí funkci k PlayerSay, string.lower způsobí, že porovnání ignoruje velká písmena, ChatPrint zobrazí pozdrav tomuto hráči a prázdný řetězec skryje napsaný příkaz v chatu.
Dalším krokem přidej skriptovanou zbraň. Zbraně žijí v lua/weapons/, takže požádej agenta, aby tam vytvořil jeden soubor a vysvětlil každé pole, které nastavuje. Mod s ručním dělostřelectvem a minomety by například mohl být skriptovanou zbraní nebo skriptovanou entitou a ty jeho chování popíšeš obyčejnými slovy. Agent použije write_file na nový soubor, grep k ukázání, kde se objevuje název třídy, a Shell na tvůj testovací příkaz. Režim Plan only vypíše všechny soubory dřív, než se cokoli uloží. Potom ji spawnuj na gm_flatgrass a čti konzoli kvůli chybám.
Hráči stahují tvůj addon ze serveru, ne z tvého počítače. Rychlý způsob, jak jim ušetřit ruční instalaci všech tvých modů, je kolekce Workshopu nebo řádky resource.AddWorkshop v serverovém souboru Lua. Tvůj vlastní addon musí být nejdřív zveřejněn ve Workshopu, protože resource.AddWorkshop přebírá ID zveřejněné položky. Zveřejňuj jen povolený obsah. Požádej agenta, aby řádky přidal pomocí edit_file, a zkontroluj diff. Pokud se hráči na tvém testovacím serveru GMod nestahují addony z Workshopu, nejdřív pomocí grep vyhledej resource.AddWorkshop. Potom server restartuj a připoj se jako hráč a sleduj stahování.