⭐🚀 TkyNET | Blacklist ve Profesyonel DDoS Korumalı TeamSpeak 3 Sunucuları 🚀⭐
Sponsor Görsel
Server ip : 95.173.173.2 || Ts3 : LCAPRO www.lcapro.net
Sponsor Görsel 2
SponsorSponsor

SQL Ban Sistemi v3.1 Premium

Konu

#1
Eklenti Adı: SQL Ban Sistemi v3.1 Premium
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 -
ds-f4e4505c-0cfe-4d22-b17c-796a1da2103e-18982



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_bans
Web siteniz veya paneliniz bu tabloya bağlanarak aktif banları listeleyebilir. Örnek aktif ban kontrol sorgusu:

Kod:
SELECT * FROM sql_bans
WHERE active = 1
AND (ban_minutes = 0 OR expires_at IS NULL OR expires_at > NOW())
ORDER BY id DESC;

Belirli bir oyuncunun SteamID, IP veya nick bilgisine göre ban kontrolü için örnek sorgu:

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;

Web site / panel tarafında kullanılabilecek temel alanlar:

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 SteamID

Not: Web panel kullanacaksanız panel ile eklentinin aynı veritabanı bilgilerini kullanması gerekir. Eklenti tarafındaki SQL bağlantı bilgileri ile web tarafındaki SQL bağlantı bilgileri aynı olursa ban kayıtları ortak şekilde yönetilebilir.



Kurulum

1. Eklenti dosyasını derleyin:

Kod:
sql_ban_sistemi.sma
Derleme sonrası oluşan dosya:

Kod:
sql_ban_sistemi.amxx
2. Derlenen dosyayı şu dizine atın:

Kod:
cstrike/addons/amxmodx/plugins/sql_ban_sistemi.amxx
3. Plugins.ini dosyasına ekleyin:

Kod:
sql_ban_sistemi.amxx
4. INI dosyasını şu dizine atın:

Kod:
cstrike/addons/amxmodx/configs/sql_ban_sistemi.ini
5. INI içindeki SQL bilgilerini kendi MySQL bilgileriniz ile düzenleyin.

6. 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
sqlx

Modules.ini içinde SQL modülünün aktif olduğundan emin olun.

Kontrol edilecek dosya:

Kod:
cstrike/addons/amxmodx/configs/modules.ini
SQL modülü kapalıysa aktif hale getirin:

Kod:
sqlx


INI Ayar Dosyası

INI dosya yolu:

Kod:
addons/amxmodx/configs/sql_ban_sistemi.ini
Örnek INI içeriği:

Kod:
; 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]
Örnek:

Kod:
sql_ban "Oyuncu" 60 "Hile kullanimi"
Süresiz ban için dakika değerini 0 girin:

Kod:
sql_ban "Oyuncu" 0 "Kalici ban"
sql_unban
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>
Örnek:

Kod:
sql_unban "STEAM_0:1:123456"
sql_banmenu
Oyuncu seçerek menüden SQL ban atmanızı sağlar.

Kod:
sql_banmenu
sql_unbanmenu
Aktif ban kayıtlarını listeler ve seçilen kaydı normal unban yapar.

Kod:
sql_unbanmenu
sql_menu
SQL kayıt yönetim menüsünü açar.

Kod:
sql_menu
sql_reloadbans
INI ayarlarını yeniden yükler ve SQL bağlantısını yeniler.

Kod:
sql_reloadbans


Oyun İçi Say Komutları

Ban menüsünü açmak için:

Kod:
!bm
.bm
/bm
!banmenu
.banmenu
/banmenu

Unban menüsünü açmak için:

Kod:
!ubm
.ubm
/ubm
!unbanmenu
.unbanmenu
/unbanmenu

SQL menüsünü açmak için:

Kod:
!sqlban
.sqlban
/sqlban
!sqlmenu
.sqlmenu
/sqlmenu

Chat üzerinden hızlı ban atmak için:

Kod:
.ban nick dakika sebep
!ban nick dakika sebep
/ban nick dakika sebep

Örnek:

Kod:
.ban Oyuncu 30 Kufur
Chat üzerinden hızlı unban atmak için:

Kod:
.unban nick
!unban nick
/unban nick
.ub nick
!ub nick
/ub nick

Örnek:

Kod:
.unban Oyuncu


Menü 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 Uygula

Hazır süreler:

Kod:
Varsayilan Sure
5 Dakika
30 Dakika
60 Dakika
120 Dakika
Sinirsiz

2. SQL Unban Menüsü

Aktif 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 Temizle



Ban 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"
Süresiz Ban
Dakika değeri 0 girilirse oyuncu süresiz banlanır.

Örnek:

Kod:
sql_ban "Oyuncu" 0 "Hile"
Normal Unban
Ban kaydı SQL tablosundan silinmez. Sadece aktifliği kapatılır.

Örnek:

Kod:
sql_unban "Oyuncu"
Fiziksel SQL Silme
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_bans
Tabloda tutulan temel bilgiler:

Kod:
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

Bu yapı sayesinde web panel tarafında ban arama, ban listeleme, aktif banları görüntüleme ve geçmiş ban kayıtlarını inceleme işlemleri yapılabilir.



Ç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 tablosu

Bu durumda Sunucu 1 üzerinden banlanan oyuncu, Sunucu 2 ve Sunucu 3'e de giriş yapamaz.



Yetki 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"

Açıklama:

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 yetkisi

ADMIN_RCON yetkisine sahip kişiler tüm işlemleri yapabilir.



Banlı Oyuncu Giriş Kontrolü
Banlı oyuncu sunucuya girmeye çalıştığında sistem otomatik olarak kontrol yapar.
Kontrol edilen bilgiler:

Kod:
SteamID
IP adresi
Nick

Eğer aktif ban bulunursa sunucudaki adminlere bilgilendirme mesajı gönderilir. Oyuncu ise ban sebebi ile birlikte sunucudan atılır.

Ö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: Yetkili



Dikkat 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 Kufur
Sistem oyuncunun bilgilerini alır:
Kod:
Nick
SteamID
IP

Ardından SQL tablosuna kayıt ekler. Oyuncu 60 dakika boyunca sunucuya giremez. Oyuncu tekrar bağlanmaya çalışırsa SQL kontrolü yapılır ve ban süresi dolmadıysa otomatik olarak sunucudan atılır.
Sü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.ini

Kurulum sonrası INI dosyası şu konumda olmalıdır:

Kod:
addons/amxmodx/configs/sql_ban_sistemi.ini
Şifre:
İndirme;
.zipSQL Ban Sistemi.zip(Dosya Boyutu: 10,77 KB | İndirme Sayısı: 15)
www.Tickrate.net
Cevapla
#2
Konunuz onaylanmıştır, teşekkürler.
亗 TEŞKİLAT-I MAHSUSA 亗

DNS :  pro.timailesi.com / ts1.timailesi.com

b3v4zbt
Cevapla
#3
teşekkürler
Cevapla
#4
Teşekkürler
Cevapla
#5
Tesekkurler
Cevapla
#6
teşekürller ellerine sağlık
Cevapla
#7
teşekkürler
Cevapla
#8
teşekkürler
Cevapla
#9
Teşekkürler
Cevapla
#10
tesekkurler
Nasa Gaming PRO PUBLiC   connect 95.173.173.40
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da