Eklenti Yapımcısı: Onur "MrStipFan" MASALCI
Eklenti Açıklaması; SQL Ban Sistemi, Counter-Strike 1.6 sunucuları için hazırlanmış gelişmiş MySQL tabanlı ban yönetim eklentisidir. Oyuncular nick, SteamID ve IP bilgilerine göre SQL veritabanı üzerinden kontrol edilir. Banlanan oyuncu tekrar sunucuya giriş yapmaya çalıştığında sistem otomatik olarak SQL kaydını kontrol eder ve aktif ban kaydı varsa oyuncuyu sunucudan düşürür.
- Eklenti Hakkındaki Resimler, Videolar -

Eklenti Hakkında Genel Bilgi
SQL Ban Sistemi v3.1 Premium, klasik server içi ban sistemlerinden farklı olarak ban kayıtlarını MySQL veritabanında tutar. Bu sayede ban verileri sadece tek sunucuda değil, aynı SQL bağlantısını kullanan tüm sunucularda ortak şekilde çalışabilir.
Örneğin bir oyuncu bir sunucudan SQL ban yediğinde, aynı veritabanını kullanan diğer sunuculara da giriş yapamaz. Oyuncu sunucuya bağlandığı anda sistem nick, SteamID ve IP bilgilerini kontrol eder. Aktif ban kaydı varsa oyuncu otomatik olarak kicklenir.
Bu sistem özellikle çoklu CS 1.6 sunucusu yöneten kişiler için oldukça kullanışlıdır. Ban kayıtları SQL üzerinde tutulduğu için web panel, yönetim paneli veya özel ban listeleme sayfaları ile entegre edilebilir.
Öne Çıkan Özellikler
• MySQL / SQL tabanlı ban sistemi
Ban kayıtları düz dosyada değil, SQL veritabanında saklanır.
• Otomatik SQL tablo oluşturma
Eklenti ilk çalıştığında gerekli SQL tablosu yoksa otomatik olarak oluşturur.
• Nick, SteamID ve IP kontrolü
Oyuncu sunucuya bağlanırken üç farklı veri üzerinden kontrol yapılabilir.
• Süreli ve süresiz ban desteği
Dakika bazlı ban atılabilir veya süre 0 girilerek süresiz ban uygulanabilir.
• SQL üzerinden ortak ban sistemi
Birden fazla sunucu aynı SQL veritabanını kullanarak ortak ban havuzu oluşturabilir.
• Web site / panel bağlantısına uygun yapı
Ban kayıtları SQL tablosunda tutulduğu için web sitenizden veya panelinizden ban kayıtları listelenebilir, kontrol edilebilir ve yönetilebilir.
• Menü üzerinden ban ve unban
Adminler oyun içi menü ile oyuncu seçip süre ve sebep belirleyerek ban atabilir.
• Manuel ban sebebi girme
Hazır ban sebepleri dışında admin özel sebep yazabilir.
• SQL kayıt temizleme menüsü
Pasif kayıtlar, süresi dolan kayıtlar veya tüm SQL ban kayıtları menü üzerinden temizlenebilir.
• Local cache sistemi
Yeni atılan banlar SQL cevabı beklenmeden anlık local cache içine alınır. Bu sayede banlanan oyuncu anında engellenir.
• INI dosyası üzerinden ayarlanabilir yapı
SQL bilgileri, yetkiler, varsayılan ban süresi, chat tagı ve ban sebepleri INI dosyasından düzenlenebilir.
Eklentinin Çalışma Mantığı
Oyuncu sunucuya bağlandığında sistem şu kontrolleri yapar:
1. Oyuncunun SteamID bilgisi alınır.
2. Oyuncunun IP adresi alınır.
3. Oyuncunun nick bilgisi alınır.
4. Önce local cache kontrol edilir.
5. Ardından SQL veritabanındaki aktif ban kayıtları sorgulanır.
6. Aktif ban bulunursa oyuncuya ban sebebi gösterilerek sunucudan atılır.
7. Eğer ban kaydı yoksa oyuncu normal şekilde oyuna devam eder.
Sistem bağlantı sırasında birden fazla kontrol görevi çalıştırır. Bunun amacı oyuncunun SteamID, IP veya nick bilgisinin geç gelmesi durumunda ban kontrolünün kaçırılmamasıdır.
Web Site / Panel Bağlantı Kontrol Mantığı
Bu eklenti doğrudan MySQL veritabanı ile çalıştığı için web site veya panel tarafına kolayca bağlanabilir. Web tarafında yapılması gereken işlem, eklentinin kullandığı SQL tablosunu okumaktır.
Varsayılan tablo adı:
Kod:
sql_bansKod:
SELECT * FROM sql_bans
WHERE active = 1
AND (ban_minutes = 0 OR expires_at IS NULL OR expires_at > NOW())
ORDER BY id DESC;Kod:
SELECT * FROM sql_bans
WHERE active = 1
AND (
player_steamid = 'STEAM_ID_BURAYA'
OR player_ip = 'IP_BURAYA'
OR player_nick = 'NICK_BURAYA'
)
AND (ban_minutes = 0 OR expires_at IS NULL OR expires_at > NOW())
ORDER BY id DESC
LIMIT 1;Kod:
id = Ban kayıt ID
player_nick = Oyuncu nicki
player_steamid = Oyuncu SteamID bilgisi
player_ip = Oyuncu IP adresi
admin_nick = Ban atan yetkili
admin_steamid = Ban atan yetkili SteamID
reason = Ban sebebi
ban_minutes = Ban süresi
created_at = Ban tarihi
expires_at = Ban bitiş tarihi
server_ip = Ban atılan sunucu IP
server_port = Ban atılan sunucu portu
active = Ban aktiflik durumu
removed_at = Unban tarihi
removed_by = Unban atan yetkili
removed_by_steamid = Unban atan yetkili SteamIDKurulum
1. Eklenti dosyasını derleyin:
Kod:
sql_ban_sistemi.smaKod:
sql_ban_sistemi.amxxKod:
cstrike/addons/amxmodx/plugins/sql_ban_sistemi.amxxKod:
sql_ban_sistemi.amxxKod:
cstrike/addons/amxmodx/configs/sql_ban_sistemi.ini6. Sunucuyu yeniden başlatın veya map değiştirin.
Gereksinimler
Bu eklentinin çalışması için sunucuda AMX Mod X kurulu olmalıdır.
Gerekli modüller:
Kod:
amxmodx
amxmisc
sqlxKontrol edilecek dosya:
Kod:
cstrike/addons/amxmodx/configs/modules.iniKod:
sqlxINI Ayar Dosyası
INI dosya yolu:
Kod:
addons/amxmodx/configs/sql_ban_sistemi.iniKod:
; SQL Ban Sistemi Config
; addons/amxmodx/configs/sql_ban_sistemi.ini
sql_host "127.0.0.1"
sql_user "root"
sql_pass ""
sql_db "amxx"
sql_table "sql_bans"
def_ban_minutes "0"
info_message "1"
check_nick "1"
drop_message "Sunucu yoneticisi ile iletisime geciniz."
chat_tag "[SQL Ban]"
access_ban "d"
access_unban "d"
access_sql_menu "r"
access_sql_delete "r"
reason_1 "Hile"
reason_2 "Kufur"
reason_3 "Kural ihlali"
reason_4 "Sunucu kurali ihlali"
reason_5 "Spam"
reason_6 "Flood"INI Ayarlarının Açıklaması
sql_host
MySQL sunucu adresidir. Aynı makinede MySQL kullanıyorsanız genellikle 127.0.0.1 yazılır.
sql_user
MySQL kullanıcı adıdır.
sql_pass
MySQL kullanıcı şifresidir.
sql_db
Ban kayıtlarının tutulacağı veritabanı adıdır.
sql_table
Ban kayıtlarının tutulacağı SQL tablo adıdır. Varsayılan olarak sql_bans kullanılır.
def_ban_minutes
Menüden varsayılan süre seçildiğinde uygulanacak ban süresidir. 0 yapılırsa süresiz ban atılır.
info_message
Banlı oyuncu giriş yapmaya çalıştığında sunucu içi bilgilendirme mesajı gösterilip gösterilmeyeceğini belirler.
1 = Açık
0 = Kapalı
check_nick
Nick üzerinden ban kontrolü yapılıp yapılmayacağını belirler.
1 = Nick kontrolü açık
0 = Sadece SteamID ve IP kontrolü
drop_message
Banlı oyuncu sunucudan atılırken kick mesajının sonuna eklenecek metindir.
chat_tag
Oyun içi mesajlarda kullanılacak eklenti tagıdır.
access_ban
Ban atabilecek admin yetki bayrağıdır.
access_unban
Unban atabilecek admin yetki bayrağıdır.
access_sql_menu
SQL menüsünü açabilecek admin yetki bayrağıdır.
access_sql_delete
SQL kayıtlarını fiziksel olarak silebilecek admin yetki bayrağıdır.
reason_1 / reason_2 / reason_3
Ban menüsünde gözükecek hazır ban sebepleridir. İstenildiği kadar artırılabilir.
Konsol Komutları
sql_ban
Oyuncuya SQL ban atar.
Kullanım:
Kod:
sql_ban <nick/#userid> <dakika> [sebep]Kod:
sql_ban "Oyuncu" 60 "Hile kullanimi"Kod:
sql_ban "Oyuncu" 0 "Kalici ban"Nick, SteamID veya IP bilgisine göre oyuncunun aktif ban kaydını pasif hale getirir. SQL kaydı tamamen silinmez.
Kullanım:
Kod:
sql_unban <nick/authid/ip>Kod:
sql_unban "STEAM_0:1:123456"Oyuncu seçerek menüden SQL ban atmanızı sağlar.
Kod:
sql_banmenuAktif ban kayıtlarını listeler ve seçilen kaydı normal unban yapar.
Kod:
sql_unbanmenuSQL kayıt yönetim menüsünü açar.
Kod:
sql_menuINI ayarlarını yeniden yükler ve SQL bağlantısını yeniler.
Kod:
sql_reloadbansOyun İçi Say Komutları
Ban menüsünü açmak için:
Kod:
!bm
.bm
/bm
!banmenu
.banmenu
/banmenuKod:
!ubm
.ubm
/ubm
!unbanmenu
.unbanmenu
/unbanmenuKod:
!sqlban
.sqlban
/sqlban
!sqlmenu
.sqlmenu
/sqlmenuKod:
.ban nick dakika sebep
!ban nick dakika sebep
/ban nick dakika sebepKod:
.ban Oyuncu 30 KufurKod:
.unban nick
!unban nick
/unban nick
.ub nick
!ub nick
/ub nickKod:
.unban OyuncuMenü Sistemi
Eklentide üç temel menü bulunmaktadır.
1. SQL Ban Menüsü
Bu menüden önce oyuncu seçilir. Ardından ban süresi seçilir. Son adımda ban sebebi seçilir veya manuel sebep girilir.
Menü akışı:
Kod:
Oyuncu Sec
→ Sure Sec
→ Sebep Sec
→ Ban UygulaKod:
Varsayilan Sure
5 Dakika
30 Dakika
60 Dakika
120 Dakika
SinirsizAktif ban kayıtlarını listeler. Seçilen kayıt normal unban yapılır. Normal unban işleminde SQL kaydı silinmez, sadece pasif hale getirilir.
3. SQL Temizleme Menüsü
Bu menü SQL kayıtlarını yönetmek için kullanılır.
Menü seçenekleri:
Kod:
SQL Kayit Menusu
Pasif Kayitlari Temizle
Suresi Dolanlari Temizle
Tum SQL Kayitlarini Sil
Tum Local Cache TemizleBan Türleri
Süreli Ban
Oyuncu belirlenen dakika kadar banlanır. Süresi dolduğunda oyuncu tekrar sunucuya girebilir.
Örnek:
Kod:
sql_ban "Oyuncu" 60 "Kural ihlali"Dakika değeri 0 girilirse oyuncu süresiz banlanır.
Örnek:
Kod:
sql_ban "Oyuncu" 0 "Hile"Ban kaydı SQL tablosundan silinmez. Sadece aktifliği kapatılır.
Örnek:
Kod:
sql_unban "Oyuncu"SQL menüsü üzerinden kayıt tamamen veritabanından silinir. Bu işlem için ayrı yetki tanımlanmıştır.
SQL Tablo Yapısı
Eklenti tabloyu otomatik oluşturur. Varsayılan tablo adı:
Kod:
sql_bansKod:
Oyuncu nicki
Oyuncu SteamID
Oyuncu IP adresi
Admin nicki
Admin SteamID
Ban sebebi
Ban süresi
Ban tarihi
Ban bitiş tarihi
Sunucu IP
Sunucu portu
Aktiflik durumu
Unban tarihi
Unban atan yetkiliÇoklu Sunucu Kullanımı
Bu sistem çoklu sunucu kullanımına uygundur. Birden fazla CS 1.6 sunucusunun aynı SQL bilgilerini kullanması yeterlidir.
Örnek:
Kod:
Sunucu 1 → sql_bans tablosu
Sunucu 2 → sql_bans tablosu
Sunucu 3 → sql_bans tablosuYetki Sistemi
Yetkiler INI dosyasından düzenlenebilir.
Varsayılan yetkiler:
Kod:
access_ban "d"
access_unban "d"
access_sql_menu "r"
access_sql_delete "r"Kod:
access_ban = Ban atma yetkisi
access_unban = Unban atma yetkisi
access_sql_menu = SQL menüsünü açma yetkisi
access_sql_delete = SQL kayıtlarını silme yetkisiBanlı Oyuncu Giriş Kontrolü
Banlı oyuncu sunucuya girmeye çalıştığında sistem otomatik olarak kontrol yapar.
Kontrol edilen bilgiler:
Kod:
SteamID
IP adresi
NickÖrnek mesaj mantığı:
Kod:
Banli Giris
IP: 192.168.***.***
Nick: Oyuncu
Oyuncu ID: STEAM_0:1:123456
Sebep: Hile
Ban: 2026-06-11 18:00:00
unBan: Sinirsiz
Admin: YetkiliDikkat Edilmesi Gerekenler
• SQL bilgilerinizi doğru girmelisiniz.
• MySQL sunucunuz dış bağlantıya kapalıysa oyun sunucusu veritabanına bağlanamayabilir.
• Uzak MySQL kullanıyorsanız oyun sunucusu IP adresine MySQL erişim izni vermelisiniz.
• SQL kullanıcı hesabının tablo oluşturma, veri ekleme, veri güncelleme ve veri silme yetkisi olmalıdır.
• Web panel kullanacaksanız panel ile eklenti aynı veritabanını ve tabloyu kullanmalıdır.
• Nick kontrolü açık olursa nick değiştiren oyuncular da kontrol edilir.
• SQL kayıtlarını fiziksel silme yetkisini sadece güvendiğiniz yöneticilere vermeniz önerilir.
Örnek Kullanım Senaryosu
Bir admin oyun içinde şu komutu kullanır:
Kod:
.ban Oyuncu 60 KufurKod:
Nick
SteamID
IPSüresi dolduğunda oyuncu tekrar giriş yapabilir. Süresi dolan kayıtlar SQL temizleme menüsünden temizlenebilir.
Kısaca Bu Eklenti Ne İşe Yarar?
Bu eklenti, CS 1.6 sunucularınız için merkezi, SQL tabanlı, menülü, web panel bağlantısına uygun ve çoklu sunucu destekli bir ban yönetim sistemi sağlar.
Tek sunucu için kullanılabileceği gibi, birden fazla sunucuyu ortak ban havuzuna bağlamak için de kullanılabilir. Oyuncu kontrolleri otomatik yapılır, ban kayıtları SQL üzerinde tutulur ve istenirse web site / panel tarafında da listelenebilir.
Eklenti Dosyaları
Kod:
sql_ban_sistemi.sma
sql_ban_sistemi.amxx
sql_ban_sistemi.iniKod:
addons/amxmodx/configs/sql_ban_sistemi.iniBu içeriği görebilmek için kayıt olmanız gerekiyor!
İndirme;
)



