İlk Lua modun
Sıfırdan kendi sunucunda bir /hello komutuna on dakika.
1. Aracı kur
bhmod'u kurmak için bir kez Rust gerekir:
cargo install --git https://github.com/Blockheads-Club/mod-sdk bhmod2. Modu oluştur
bhmod new my-mod
cd my-modBu, mod.toml ve server/main.luau dosyalarını oluşturur. server/main.luau dosyasını aç:
local mod = {}
function mod.on_enable()
bh.events.on("player-join", function(ev)
ev.player:send_chat(`Welcome, {ev.player:alias()}!`)
end)
bh.commands.register({ name = "hello", description = "Says hello." }, function(sender, label, args)
return { handled = true, reply = { "Hello from my-mod!" } }
end)
end
return modon_enable, dünya yüklendikten sonra bir kez çalışır. Olaylara abone olmayı ve komut kaydetmeyi orada yap.- Oyunun sunduğu her şey global
bhtablosunda: API başvurusu. - Luau destekli editörler
bh.d.luauile tamamlama alır.
3. Kontrol et
bhmod check .mod.toml ve dosyalardaki hataları bildirir; örneğin eksik bir giriş dosyası ya da bilinmeyen bir izin.
4. Paketle
bhmod pack .Bu, my-mod-0.1.0.bhmod dosyasını yazar. Aynı girdi her zaman aynı dosyayı verir.
5. Yerel sunucuda çalıştır
Bir Blockheads Server geliştirme sürümünü bir kez başlat, veri klasörünü oluştursun.
my-mod-0.1.0.bhmoddosyasını (ya da tümmy-modklasörünü)<veri klasörü>/mods/içine kopyala.Şablon
players:chatister, onu<veri klasörü>/mods/mods.tomliçinde ver:toml[my-mod] grant = ["players:chat"]Sunucuyu başlat ve katıl. Günlükte
loaded 1 mod(s): my-mod 0.1.0görünür, karşılama satırını alırsın ve/helloyanıt verir.
Daha hızlı döngü
Sunucuyu doğrudan çalışma klasörüne yönlendir: BLOCKHEADS_MODS_DIR=/path/to/folder-with-my-mod. Her değişiklikten sonra yeniden başlat. Paketlemeye gerek yok.
Sırada ne var
- Daha fazla örnek:
hello-lua,chat-filter,scheduler-lua. - Olaylar · Komutlar ve zamanlayıcılar · Depolama