Discord sunucumuz açılmıştır, hepinizi bekleriz

https://discord.gg/43gGDQe6tS

[nVault] Hesap Kayıt Sistemi 1.0

Counter-Strike 1.6 Eklenti Paylaşımı

Moderatör: Moderatörler

Forum kuralları
DİKKAT !
Konu Başlığı veya içeriği BÜYÜK HARFLERLE olan konular direk silenecektir !
Burası eklenti paylaşım bölümüdür ve yönetici onaylıdır. Alakasız konular hiçbir şekilde onaylanmayacaktır

Eklenti eklerken eklenti kurallarına uyulması gerekir.
En önemlisi paylaşılan eklenti şablonuna uyulması gerekir.
Bu hususlara dikkat edilmeyip paylaşılan eklenti konuları silenecektir.
Kullanıcı avatarı

Konu Sahibi
bestcore
Mesajlar: 1625
Kayıt: Cmt Eyl 30, 2017 12:44 pm
Konum: Samsun

[nVault] Hesap Kayıt Sistemi 1.0

Mesaj gönderen bestcore »

Eklenti İsmi : Hesap Kayıt Sistemi
Yapımcısı : ` BesTCore;
Sürüm : 1.0
Açıklama : Eklentilerinizde kullanabileceğiniz hesap kayıt sistemidir.

Yakın zaman içerisinde bu hesap sistemi üzerinden çeşitli menüler paylaşılacaktır.

Kendinize Göre Editleyeceğiniz Satırlar;
Satır 9

Hesap Sisteminin İşleyiğini Gösteren Fotoğraflar;

HesapSistemiKayitBilgi2.png
HesapSistemiKayitBilgi.png
Hesap Sisteminde Bulunan Komutlar;

Kod: Tümünü seç

amx_accountstatus hesapnumarası 1/0
Bu komut ile belirlediğimiz yetkiye sahip kişi hesapnumarası bölümüne yazılan hesabın durumunu 1/0 bölümünde yazdığınız değere eşitler.

Örnek;

Kod: Tümünü seç

amx_accountstatus 12 1
Bu komut ile 12 numaralı hesabın durumunu "1" yani "YASAKLI" yaptım.

Kod: Tümünü seç

amx_accountstatus 12 0
Bu komut ile 12 numaralı hesabın durumunu "0" yani "YASAKSIZ" yaptım.
HesapSistemiBanBilgi.png
HesapSistemiBanBilgi2.png
Hesap Sisteminde Kayıt Bilgileri Nereye Düşer ?
10. Satırda belirlediğimiz yerde bulunan ".ini" dosyasının içerisine
"Oyuncu Ismı" "Kullanıcı Adı" "Hesap Şifresi" "Hesap Numarası" şeklinde loglanır.

Hesap Sisteminde Cvar Ayarlı Otomatik Giriş Mevcut;
Satır 53'deki cvar ayarını "1" olarak değiştirirseniz oyuncular map değiştiğinde otomatik olarak en son girdiği hesaba giriş yapar,
cvar ayarını "0" olarak değiştirirseniz oyuncuların hesabına map değiştiğinde otomatik olarak giriş yapmaz.

Hesap Sisteminde Bulunan Forwardlar;

Hesap Sisteminde 3 adet forward vardır, bu forwardlar oyuncu hesabına girince, bir hesaba 2 kişi girince veya oyuncunun hesabı banlanınca
ne yapmak istiyorsanız bu forwardlar ile yapacaksınız.

Kod: Tümünü seç

public UserAccountLogin(id)
Bu forward bir oyuncu hesabına giriş yaptığında çalışır.

Kod: Tümünü seç

public UserAccountMultiLogin(id)
Bu forward bir hesaba 2 kişi girdiğinde çalışır. Bu forwardda hesapta bulunan oyuncuya işlem yaptırırsınız.
Hesapta bulunan oyuncu hesaptan çıkar yerine giriş yapan kişi girer.

Kod: Tümünü seç

public UserAccountBanned(id)
Bu forward oyuncunun hesabı banlandığında çalışır. Banlanan oyuncuya bir işlem yapacaksanız bunu kullanmalısınız.

Hesap Sistemi Nativeleri Ve Kullanımları;

- Hesap sisteminde, menüden oyuncuları yönlendirmek için nativeler bulunuyor, nativeler şu şekildedir.

Kod: Tümünü seç

native iLogin(id);
Oyuncuyu hesap sisteminde giriş yapma sekmesine yönlendirir.

Kod: Tümünü seç

native iRegister(id);
Oyuncuyu hesap sisteminde kayıt olma sekmesine yönlendirir.

Kod: Tümünü seç

native iExit(id);
Oyuncuyu hesap sisteminde hesabından çıkma sekmesine yönlendirir.

Kod: Tümünü seç

native iAccountsNum(id);
Oyuncunun hesap numarasını çekme nativesidir.

Kod: Tümünü seç

native iAccountsNumControl(id);
Oyuncunun hesap numarası var mı diye kontrol etme nativesidir. ( Varsa 1, Yoksa 0 döndürür).

Kod: Tümünü seç

native iLastAccountsNum(id);
Hesap sisteminde bulunan hesapların en sonuncusunun numarasını çekme nativesidir.( Bütün hesaplara işlem yaptırmak istiyorsanız bunu kullanmalısınız.)

Hesap Sisteminin İşleyişini Gösteren Eklenti;
AccountMenu.sma
Eklenti;
AccountSystem.sma
Bu mesaja eklenen dosyaları görüntülemek için gerekli izinlere sahip değilsiniz.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Colditz
Mesajlar: 2574
Kayıt: Çrş Ağu 23, 2017 9:17 pm

[nVault] Hesap Kayıt Sistemi 1.0

Mesaj gönderen Colditz »

Eklenti onaylandı fakat biraz güncellenmesi gerekiyor.
  • Reapi?
Eklentide kütüphane olarak reapiyi algılatmışsınız fakat MAX_CLIENTS dışında hiçbir işleve yaramıyor. MAX_CLIENTS -> MAX_PLAYERS
  • Formatex
Eklentide gereksiz formatex kullanımı var. Evet, önceden formatex kullanmak zorundaydınız fakat güncellemelerle gelen "fmt" komutuna bir göz atmalısınız. Gereksiz değerlerden kaçındığınızı göreceksiniz.
  • Gereksiz Değer
Yukarıda da belirttiğim gibi gereksiz değerler var fakat sadece formatex için değil. Bir örneğini atıyorum. Birkaç yerde daha var. Bunu rahatça bulabilirsin.

Kod: Tümünü seç

public iOtoLogin(id){
	//new name[20], pass[20];
	//get_user_info(id, "_hn", name, charsmax(name));
	//get_user_info(id, "_hs", pass, charsmax(pass));
	//iName[id] = name;
	//iPass[id] = pass;
	get_user_info(id, "_hn", iName[id], charsmax(iName[]));
	get_user_info(id, "_hs", iPass[id], charsmax(iPass[]));
	Login(id);
}
  • EOS
End Of String olarak bilinen bu komut değerin boş olup olmadığını kontrol ediyor. Contain yerine bunu kullanmalısın.

Kod: Tümünü seç

//else if(containi(arg, " ") != -1){
else if(arg[0] == EOS) {

Aynı şekilde;
[code]
iName[id] = ""
iName[id] = EOS;
  • FOpen
read_file yerine fopen kullanman hoşuma gitti fakat tam harika diyemiyorum. Nedeni formatex ve "a+". Formatex hakkında yukarıda bahsettim bu yüzden a+ ile devam ediyorum. "a+" yazdıysanız bu dosya yoksa dosyayı oluşturur, varsa dosya üzerinden devam eder. Fakat siz dosyanın olmaması durumunda log koymuşsunuz ve biraz saçma olmuş. Bu şekilde olması daha iyi olurdu.

Örnek olsun diye hızlı hızlı yaptım hatalar olabilir.

Kod: Tümünü seç

public Register(id){
	//new form[50], accnum;
	//formatex(form, charsmax(form), "%s-%s", iName[id], iPass[id]);
	//accnum = nvault_get(nInt[iVault], form);
	new accnum = nvault_get(nInt[iVault], fmt("%s-%s", iName[id], iPass[id]));

	if(!accnum){
		//new form1[50];
		//formatex(form1, charsmax(form1), "LastNum");
		//accnum = nvault_get(nInt[iVault], form1);
		accnum = nvault_get(nInt[iVault], "LastNum");

		if(!accnum){
			accnum = 1;
		}
		else {
			accnum++;
		}

		//Daha fazla bilgi için
		//https://forums.alliedmods.net/showthread.php?t=46218
		//------------------------------------------------------
		//new form2[50];
		//new file, write[150], len;
		//if(!(file = fopen(iAccountsSave, "a+"))){
			//log_amx("Hesap kayit bilgilerini kayit edecek .ini dosyasi bulunamadi.");
			//return PLUGIN_HANDLED;
		//}
		//formatex(form2, charsmax(form2), "%i", accnum);
		new iFile = fopen(iAccountsSave, "a+");

		if(iFile) {
			new szStr[10];
			num_to_str(accnum, szStr, charsmax(szStr));

			//nvault_set(nInt[iVault], form, form2);
			//nvault_set(nInt[iVault], iName[id], form2);
			//nvault_set(nInt[iVault], iPass[id], form2);
			//nvault_set(nInt[iVault], form2, form2);
			nvault_set(nInt[iVault], fmt("%s-%s", iName[id], iPass[id]), szStr);
			nvault_set(nInt[iVault], iName[id], szStr);
			nvault_set(nInt[iVault], iPass[id], szStr);
			nvault_set(nInt[iVault], szStr, szStr);

			int[id][iAccountsNum] = accnum;

			client_cmd(id, "setinfo _hn %s", iName[id]);
			client_cmd(id, "setinfo _hs %s", iPass[id]);

			client_print_color(id, id, "%s ^3Basarili bir sekilde kayit oldunuz.",iChatTag);
			client_print_color(id, id, "%s ^1[ ^3Kullanici Adi:^4 %s ^1|| ^3Sifre: ^4%s ^1 || ^3Hesap Numarasi:^4 %d ^1]",iChatTag, iName[id], iPass[id], accnum);
			client_print_color(0, 0, "%s^1 %n ^3adli oyuncu sisteme kayit oldu. ^4Toplam Kayitli Kullanici Sayisi:^1 %i",iChatTag, id, accnum);

			//len += formatex(write[len], charsmax(write)-len, "Oyuncu: %n - Kullanici Adi: %s - Sifre: %s - Hesap Numarasi: %i -^n", id, iName[id], iPass[id], accnum);
			//fputs(file, write);
			fprintf(iFile, fmt("Oyuncu: %n - Kullanici Adi: %s - Sifre: %s - Hesap Numarasi: %i -^n", id, iName[id], iPass[id], accnum));

			fclose(iFile);

			nvault_set(nInt[iVault], "LastNum", szStr);
			Login(id);
		}
	}
	return PLUGIN_HANDLED;
}

Link:
Linklerini gizle
Linki Kopyala

heğgesin
Mesajlar: 3
Kayıt: Pzt Ara 21, 2020 5:37 pm

[nVault] Hesap Kayıt Sistemi 1.0

Mesaj gönderen heğgesin »

Senden Harikası Mezarda Çok Teşekür Ederim <3:)

Link:
Linklerini gizle
Linki Kopyala

redirectgaming
Mesajlar: 6
Kayıt: Cum Oca 15, 2021 6:30 pm

[nVault] Hesap Kayıt Sistemi 1.0

Mesaj gönderen redirectgaming »

Peki bunu kodu ne yani ne yazarsak kayıt olucaz ?

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Konu Sahibi
bestcore
Mesajlar: 1625
Kayıt: Cmt Eyl 30, 2017 12:44 pm
Konum: Samsun

[nVault] Hesap Kayıt Sistemi 1.0

Mesaj gönderen bestcore »

Colditz yazdı: Sal Şub 02, 2021 8:47 pm
Onay için ve bilgiler için teşekkürler, 2. güncelleme yapmayı düşünüyorum onunla birlikte getiririm, böyle bilgiler vermeniz çok fazla derecede yardımcı oluyor, tekrardan teşekkürler.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Konu Sahibi
bestcore
Mesajlar: 1625
Kayıt: Cmt Eyl 30, 2017 12:44 pm
Konum: Samsun

[nVault] Hesap Kayıt Sistemi 1.0

Mesaj gönderen bestcore »

redirectgaming yazdı: Sal Şub 02, 2021 9:14 pm Peki bunu kodu ne yani ne yazarsak kayıt olucaz ?
Eklentinin .sma dosyalarının olduğu yerde "Hesap Sisteminin İşleyişini Gösteren Eklenti"'nin altında bulunan .sma uzantılı dosyayı inceleyin, içerisinde bütün komutları ve bir eklentiyi nasıl yapmanız gerektiğini kendi bilgilerim ile aktardım anlamadığınız bir yer olursa sorabilirsiniz, bu paylaştığım eklenti menü halinde bir şey değil menüyü yapmak için bir aparat gibi. Söylediğim gibi bu hesap sistemine bağlı olarak yakında jb, bb gibi modların menüsünü de paylaşacağım.

Link:
Linklerini gizle
Linki Kopyala

redirectgaming
Mesajlar: 6
Kayıt: Cum Oca 15, 2021 6:30 pm

[nVault] Hesap Kayıt Sistemi 1.0

Mesaj gönderen redirectgaming »

Mesela say Kısmına Ne Yazar İsem Açılır /kayitol Gibi

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

PawNod
Yasaklı Üye
Yasaklı Üye
Mesajlar: 63
Kayıt: Sal Eyl 22, 2020 6:20 pm

[nVault] Hesap Kayıt Sistemi 1.0

Mesaj gönderen PawNod »

Başarılı olmuş kullanırım teşekkürler ellerine sağlık

Link:
Linklerini gizle
Linki Kopyala

PaZee
Mesajlar: 1755
Kayıt: Çrş Şub 22, 2017 11:28 pm
Konum: Istanbul
Server Ip/DNS: Cs.teknoklan.com
Clan İsmi: TeknoKlan
İletişim:

[nVault] Hesap Kayıt Sistemi 1.0

Mesaj gönderen PaZee »

Uid sisteminizin işleyişi bazı eklenti yapımlarında sıkıntı çıkaracaktır.

Denemelerime göre ArrayFind işleminde 38 diye arattıgımız zaman içinde 38 olan Herhangi bir Arrayı Buluyor.

yani 38000 i de bulabilir 380i de 38i de gibi gibi.

Ki hesap olarak rahatından 5000 e yakın kayıt açılıyor bir serverda.

en iyisi tc kimlikleri gibi 11 haneli sabit bir sistem kurmak.

Kayit sistemini bi ara 11 haneye çekecegim, bi yerden sonra kayit açılması mümkün hale gelmez diye, sizede daha sisteminizi piyasaya tam anlamıyla sürmeden 11 haneli yapmanızı öneririm, hatta benim zamanım olmuyor isterseniz kayit sistemimi güncelleyerek forumda V2 tarzında paylaşabilirsiniz.

kayit isim ve sifrelerini koyarken özel haneleri de engellemen gerekli sadece alfabetik şeylerin girilmesi gibi, kayit sisteminin gelişimini yapacağın zaman önüne sıkıntı olarak çıkabilir.

Bu arada kişinin kimlik numarasından isim şifre alma, tarzında nativeleri çoğaltırsan Eklentiyi kullanacak arkadaşlara çok sağlam bir eklenti sunmuş olursun.

Ellerine sağlık iyi forumlar.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

heaveNN
Mesajlar: 314
Kayıt: Prş Ağu 22, 2019 11:11 pm
Clan İsmi: RedDawn

[nVault] Hesap Kayıt Sistemi 1.0

Mesaj gönderen heaveNN »

PaZee yazdı: Sal Şub 02, 2021 11:45 pm Uid sisteminizin işleyişi bazı eklenti yapımlarında sıkıntı çıkaracaktır.

Denemelerime göre ArrayFind işleminde 38 diye arattıgımız zaman içinde 38 olan Herhangi bir Arrayı Buluyor.

yani 38000 i de bulabilir 380i de 38i de gibi gibi.

Ki hesap olarak rahatından 5000 e yakın kayıt açılıyor bir serverda.

en iyisi tc kimlikleri gibi 11 haneli sabit bir sistem kurmak.

Kayit sistemini bi ara 11 haneye çekecegim, bi yerden sonra kayit açılması mümkün hale gelmez diye, sizede daha sisteminizi piyasaya tam anlamıyla sürmeden 11 haneli yapmanızı öneririm, hatta benim zamanım olmuyor isterseniz kayit sistemimi güncelleyerek forumda V2 tarzında paylaşabilirsiniz.

kayit isim ve sifrelerini koyarken özel haneleri de engellemen gerekli sadece alfabetik şeylerin girilmesi gibi, kayit sisteminin gelişimini yapacağın zaman önüne sıkıntı olarak çıkabilir.

Bu arada kişinin kimlik numarasından isim şifre alma, tarzında nativeleri çoğaltırsan Eklentiyi kullanacak arkadaşlara çok sağlam bir eklenti sunmuş olursun.

Ellerine sağlık iyi forumlar.
uidlerin 1000'den başlaması daha yararlı diye düşünüyorum. Rastgele oluşturulan uidlerde hesap içeriği sıfırlama yapılamıyor. Mecburen tüm hesapları onunla birlikte tüm oyuncu verileri de siliniyor.

Link:
Linklerini gizle
Linki Kopyala
Cevapla