Satu file, tanpa build
Gamemode adalah satu file .sa. Server mengompilasi dan mengecek tipenya saat start, validator bisa kapan saja.
Knight Programming Language
Knight adalah bahasa pemrograman bertipe statis yang tertanam di server Knight SA-MP 0.3.7 / 0.3.DL. Satu file .sa, panggil native dengan nama, tanpa langkah build Pawn.
system::config() {
server.name = "Euporia RP";
server.max_players = 200;
};
player::spawn() {
SetPlayerHealth(playerid, 100.0);
SendClientMessage(playerid, "Welcome, {PlayerName(playerid)}!");
};
player::command("/top", int n) {
for (let i = 0; i < PlayerCount(); i += 1) {
if (!IsPlayerConnected(i)) { continue; }
if (i >= n) { break; }
}
};
curl -fsSL https://github.com/ventosilenzioso/knight.git
./tools/knight-linux-amd64 -check Gamemodes/minimal.sa
Validasi gamemode
Atau unduh distribusinya lalu jalankan server. server.cfg opsional: taruh konfigurasi di system::config().
Gamemode adalah satu file .sa. Server mengompilasi dan mengecek tipenya saat start, validator bisa kapan saja.
SetPlayerHealth(playerid, 100.0) dengan nama. Tanpa awalan sa., tanpa self, tanpa lapisan binding.
Parameter bertipe, nilai default, parameter rest, dan anotasi opsional, semuanya ditangkap saat kompilasi dengan baris:kolom.
while, do..while, for, for..in pada array dan map, switch tanpa fall-through, break dan continue.
Pecah gamemode jadi modul, muat plugin .sa tanpa rebuild, atau tulis plugin Go untuk fitur secepat native.
Daftarkan id RPC sendiri, baca payload biner dengan aman, filter berdasarkan prioritas, ukuran dan laju.
Server SA-MP 0.3.7 / 0.3.DL yang ditulis dari nol dalam Go, dengan bahasa bertipe statis sendiri untuk gamemode.
Tidak. Gamemode berupa file .sa. Tidak ada AMX, tidak ada compiler, tidak ada rantai include.
Tidak. Semua pengaturan bisa ada di system::config() dalam gamemode. server.cfg dibaca bila ada dan mengisi field yang tidak dideklarasikan kode.
559 native, 69 builtin, dan 41 callback, semuanya terdokumentasi dengan signature.
Bisa. HandleCustomRPC dan HandleRPC mendaftarkan id RPC untuk client mod, dengan batas ukuran dan laju dari engine.
Ya. Server, bahasa, dan dokumentasinya open source.