Unod már a gyári adminisztrációs lehetőségeket a Counter-Strike 1.6 szerveredben? Szeretnél egyedi funkciókat, amik pontosan a te közösséged igényeire vannak szabva? Akkor itt a lehetőség, hogy a kezedbe vedd az irányítást és saját admin plugint készíts!
Elsőre talán bonyolultan hangzik, de ne ijedj meg! Ez a cikk lépésről lépésre végigvezet a folyamaton, hogy te is profi módon tudj AMX Mod X plugint írni.
Miért érdemes saját plugint írni?
- Teljes kontroll: Te döntöd el, hogy milyen funkciók legyenek.
- Testreszabhatóság: A plugin tökéletesen illeszkedik a szervered stílusához és szabályaihoz.
- Egyedi megoldások: Olyan funkciókat implementálhatsz, amik más pluginokban nem találhatók meg.
- Közösségi érték: Lenyűgözheted a játékosokat az egyedi fejlesztéseiddel.
Szükséges előkészületek
Mielőtt belevágnánk a kódolásba, győződjünk meg róla, hogy minden szükséges szoftver és tudásanyag rendelkezésünkre áll:
- AMX Mod X: Telepítve kell lennie a szervereden. (Ez adja a pluginok futtatásának alapját)
- Pawn Compiler: Ezzel fordítjuk a plugin kódját futtatható formátumba (.amxx). Letölthető az AMX Mod X hivatalos oldaláról.
- Szövegszerkesztő: Ajánlott egy kódolásra specializált szövegszerkesztő, mint például a Notepad++, Sublime Text vagy Visual Studio Code. Ezek segítenek a kód olvashatóságában és a hibák elkerülésében.
- Pawn Scripting alapismeretek: A Pawn egy C-szerű szkriptnyelv, amit az AMX Mod X pluginokhoz használunk. Alapvető ismeretek nélkül nehéz lesz boldogulni.
Az első plugin – Hello World!
Kezdjük egy egyszerű példával, a klasszikus „Hello World!” pluginnal. Ez megmutatja, hogyan kell felépíteni egy alapszintű plugint.
- Nyiss meg egy új szöveges fájlt.
- Írd be a következő kódot:
#include public plugin_init() { register_plugin("Hello World", "1.0", "Te_neved"); client_print(0, print_chat, "Hello World!"); }
- Mentsd el
.sma
kiterjesztéssel (pl.helloworld.sma
). - Fordítsd le a Pawn Compilerrel. Ez létrehoz egy
.amxx
fájlt. - Másold az
.amxx
fájlt a szervered/addons/amxmodx/plugins/
mappájába. - Szerkeszd a
/addons/amxmodx/configs/plugins.ini
fájlt, és add hozzá a plugin nevét (helloworld.amxx
) egy új sorba. - Indítsd újra a szervert, vagy írd be a konzolba:
amx load helloworld
.
Ha minden jól ment, a szerverre való csatlakozáskor a chatben meg kell jelennie a „Hello World!” üzenetnek.
Egy hasznos admin parancs – Kick
Most nézzünk egy kicsit komplexebb példát: egy egyszerű kick parancsot, amit az adminok használhatnak.
- Nyiss meg egy új szöveges fájlt.
- Írd be a következő kódot:
#include public plugin_init() { register_plugin("Admin Kick", "1.0", "Te_neved"); register_concmd("amx_kick", "cmdKick", ADMIN_KICK); } public cmdKick(id, level, cid) { if (!cmdaccess(id, level, cid, 1)) { client_print(id, print_chat, "[AMXX] Nincs jogosultságod!"); return PLUGIN_HANDLED; } new target = read_argv(1); if (!is_user_connected(str_to_num(target))) { client_print(id, print_chat, "[AMXX] A játékos nem található!"); return PLUGIN_HANDLED; } server_cmd("kickid %s", target); return PLUGIN_HANDLED; }
- Mentsd el
.sma
kiterjesztéssel (pl.admin_kick.sma
). - Fordítsd le a Pawn Compilerrel.
- Másold az
.amxx
fájlt a szervered/addons/amxmodx/plugins/
mappájába. - Szerkeszd a
/addons/amxmodx/configs/plugins.ini
fájlt, és add hozzá a plugin nevét (admin_kick.amxx
) egy új sorba. - Indítsd újra a szervert, vagy írd be a konzolba:
amx load admin_kick
.
Ezután az adminok a amx_kick <játékos ID>
paranccsal ki tudják rúgni a játékosokat. Fontos, hogy az admin rendelkezzen a megfelelő jogosultsággal (ADMIN_KICK
flag).
Haladó technikák
Ha már elsajátítottad az alapokat, érdemes tovább lépni a haladóbb technikák felé:
- Adatbázis kezelés: Tárolj adatokat MySQL adatbázisban (pl. ban listák, statisztikák).
- Menürendszerek: Készíts interaktív menüket a játékosok számára.
- Eseménykezelés: Reagálj játékbeli eseményekre (pl. játékos halála, fegyvervásárlás).
- String kezelés: Hatékonyan kezeld a szövegeket.
„A saját pluginok írása nem csak a szerver irányítását teszi hatékonyabbá, hanem egyben remek lehetőség a programozási készségeid fejlesztésére is. Én is így kezdtem, és ma már webfejlesztőként dolgozom!” – Egy volt CS 1.6 szerver admin
Hibakeresés
A kódolás során elkerülhetetlen, hogy hibákba ütközzünk. Néhány tipp a hibakereséshez:
- Ellenőrizd a compiler üzeneteit: A compiler részletes információt ad a hibákról.
- Használj debug üzeneteket: A
log_amx()
függvény segítségével írj ki üzeneteket a szerver konzoljára. - Keresd meg a fórumokat: Az AMX Mod X közösség hatalmas, és rengeteg tapasztalt fejlesztő segít szívesen.
Végső gondolatok
A saját admin pluginok írása izgalmas és kreatív tevékenység. Ne félj kísérletezni, tanulni és hibázni! A lényeg, hogy vedd kezedbe az irányítást és alakítsd a CS 1.6 szerveredet a saját elképzeléseid szerint. A lehetőségek szinte korlátlanok, csak a képzeleted szab határt.
Sok sikert a kódoláshoz! 🚀