Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
log yapımı
#1
merabalar. yapmak istediğim birşey var ama şöyle söyliyim. Bi log dosyası yapmak istiyorum. Servera giren oyuncuların bilgilerini kaydetsin. Kaydetme sırası da şu şekilde olacak. Mesela cstrike içerisine bi kayitlar.log diye bi dosya oluştursun. içeriginde de satılarda mesela şu şekilde olsun.

1- "Nick" "Steamid" "Ip Adress"

Örnek :

1- "Shakespeare" "STEAM_0:0:25224561" "95.25.66.12"
2- "Hasan" "VALVE_ID_LAN" "123.22.63.11"

gibi bi kayıt oluşturma imkanım varmı acaba ? Teşekkür ederim ilgileriniz icin.
MSN : [email protected]
WEBSİTE : www.matcharena.net
FACEBOOK : www.facebook.com/MatchArena

- MatchArena.NET -
Güvenli ve hızlı steam satışında doğru adres!

Reply
#2
Elbette var ama bunun nasıl yapıldığını öğrenmek istiyorsan senin için biraz ileri düzey olabilir. Böyle bir plugini kendi başına yapabilmen için, dosya fonksiyonları, array değişkenleri ve for döngüsü hakkında orta düzeyde bilgi gerek.

Yinede istiyorsan, 20-30 dk sonra yapar veririm.


CS:GO ve CS 1.6 için ücretli eklenti yapılır.
Plugin yazmak isteyenlere yardımcı olabilirim.
Skype adresimden ulaşabilirsiniz:
destek_596
Steam: http://steamcommunity.com/id/ca-nemesis/

Reply
#3
aslında adamın authid sini almayı nickini çağırmayı ve ip adresini almayı kodlarını biliyorum get_user_ip ve get_user_authid ile dünkü gibi yapabilirm fakat alt alta herkesin sıralı bi şekilde nasıl kayıt ettirebilecegimi bilmiyorum o yuzden yardım istedim.

---------- Alttaki Mesaj Zamani 13:35 ---------- Önceki Mesaj Zamani 13:33 ----------

for komutuyla herkese uygulanıyodu bildigim kadarıyla fakat işte alt alta nası sıralatıcam o var. O yüzden eksik kaldım. Aslında bu plugine ihtiyac duydugum icin istiyorum. Yapıldıktan sonra kodlarını da görürsem bir nevze ögrenmiş olurum
MSN : [email protected]
WEBSİTE : www.matcharena.net
FACEBOOK : www.facebook.com/MatchArena

- MatchArena.NET -
Güvenli ve hızlı steam satışında doğru adres!

Reply
#4
Tamam 20 dk sonra işim bitince yapar veririm.


CS:GO ve CS 1.6 için ücretli eklenti yapılır.
Plugin yazmak isteyenlere yardımcı olabilirim.
Skype adresimden ulaşabilirsiniz:
destek_596
Steam: http://steamcommunity.com/id/ca-nemesis/

Reply
#5
Peki teşekkürler bekliyorum
MSN : [email protected]
WEBSİTE : www.matcharena.net
FACEBOOK : www.facebook.com/MatchArena

- MatchArena.NET -
Güvenli ve hızlı steam satışında doğru adres!

Reply
#6
PHP Code:
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "author"

// Dosyamizin konumunu file adli bir sabite baglayalim.
new const file[] = "addons/amxmodx/configs/kayitlar.log";

public 
plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
}
public 
plugin_cfg() {
    
// Belirtilen konumda oyle bir dosya yoksa biz yaratalim.
    
if(!file_exists(file)) {
        new 
fopen(file,"wt");
        
fclose(f);
    }
}
public 
client_putinserver(id) {
    
// Oyuncu oyuna girdiginde bilgilerini toplayalim
    
new name[32],steamid[32],ip[32];
    
get_user_name(id,name,sizeof(name))
    
get_user_authid(id,steamid,sizeof(steamid))
    
get_user_ip(id,ip,sizeof(ip),0)
    
    
// Eger ismi daha once dosyanin icine yazilmamissa oyuncuyu ekleyecek fonksiyonu calistiralim.
    
if(!is_name_exist(id,file)) {
        
add_player(name,steamid,ip)
    }
    
}
// add player fonksiyonunu yaratalim
public add_player(const name[],const steamid[], const ip[]) {
    
    new 
WriteData[96];
    
format(WriteData,sizeof(WriteData),"^"%s^" ^"%s^" ^"%s^"",name,steamid,ip)
    
write_file(file,WriteData)
    
}
// is_name_exist stockunu yaratalim. Bu Stock eger oyuncunun ismi dosyada yaziliysa true, yazili degilse false a doner.
stock is_name_exist(id,const file[]) {
    
    
// Toplam satir sayısını bulalım.
    
new total_lines file_size(file,1);
    
    new 
txtlen,found_matching;
    new 
szLineText[96],user_name[32];
    
    
get_user_name(id,user_name,sizeof(user_name))
    
    
// Olası tüm satırlar için kontrol yapmamız gerek. Bunun için de for döngüsünü kullanalım.
    
for( new line line total_lines line++ ) { // Satır, toplam satır sayısına eşit olduğunda döngü duracaktır.
        // Dosyada belli bir satırı okutmak için bu fonksiyonu kullanalım.
        
read_file(file,line,szLineText,sizeof(szLineText),txtlen)
        
        
// satır boş ise döngüyi baştan alalım. Böylece olası bir boş satır varsa cpu kullanımından tasarruf etmek için
        // başa sarıp bir sonraki satıra atlayalım.
        
if(szLineText[0] == 0) continue;
        
        new 
arg_name[32],arg_steamid[32],arg_ip[32];
        
// Parse = parçala fonksiyonu, belli bir stringi bölmek için kullanılır.
        // Peki neye göre bölüyor ? Parse tırnak içinde belirtilmiş tüm yazıları parçalar.
        // Örnegin ("a" "b" "c") bir string halinde bulunuyorsa, bu fonksiyonla bu stringi 3 farklı stringe ayırabiliriz.
        // ("a") , ("b"), ("c") şekline parçalanmış olur
        
parse(szLineText,arg_name,sizeof(arg_name),arg_steamid,sizeof(arg_steamid),arg_ip,sizeof(arg_ip))
        
        
// Eğer ilk parametrede yazan isim bilgisi ile belirtilen oyuncunun ismi aynı ise eşleşme_bulundu değişkenine 1 ekle.
        // Ve döngüyü kır. Böylece boşa cpu kullanmamış oluruz.
        
if(equali(user_name,arg_name)) {
            
found_matching++
            break;
        }
        continue
    }
    
// Eger eşleşme bulunduysa true ya döndür.
    
if(found_matching) return true;
    
// Bulunmadıysa false.
    
return false;



CS:GO ve CS 1.6 için ücretli eklenti yapılır.
Plugin yazmak isteyenlere yardımcı olabilirim.
Skype adresimden ulaşabilirsiniz:
destek_596
Steam: http://steamcommunity.com/id/ca-nemesis/

Reply
#7
çok teşekkür ederim plugin çok güzel çalışıyor. Kodları tek tek açıklamışsın biraz anlıyor gibiyim fakat çok eksiğim var Smile

---------- Alttaki Mesaj Zamani 16:45 ---------- Önceki Mesaj Zamani 16:35 ----------

birde bişey sorucam bunu oyuncunun görmesini nasıl sağlarım yani şöyle consolda yazı cıksın adam oyuna girince. ben denedim yazmıyo. yanlış publice ekliyorum sanırsam.

public client_putinserver altına
PHP Code:
console_printid"[%s] Isminiz, Steam ID'niz ve IP Adresiniz Server Tarafindan Kayit Altina Alinmistir.",szStag);
    
console_printid"[%s] Isminiz, Steam ID'niz ve IP Adresiniz Server Tarafindan Kayit Altina Alinmistir.",szStag); 

ekledim fakat yazmıyor genede. bi yanlış mı yapıyorum acaba
MSN : [email protected]
WEBSİTE : www.matcharena.net
FACEBOOK : www.facebook.com/MatchArena

- MatchArena.NET -
Güvenli ve hızlı steam satışında doğru adres!

Reply
#8
console_print - konsola yazdırır.
client_print(index,print_type,"mesaj",any) - Oyuncunun ekranına yazdırır.

print_type:
print_chat - chat kısmında yazar
print_center - ekranın ortasında yazar
print_console - konsolda yazar

Örnek Kullanım:
console_print(id,print_chat,"Ip Adresiniz Kayit Altina Alindi [%s]",ip)

Bkz: https://www.csplague.com/pawn-plugin-der...nular.html


CS:GO ve CS 1.6 için ücretli eklenti yapılır.
Plugin yazmak isteyenlere yardımcı olabilirim.
Skype adresimden ulaşabilirsiniz:
destek_596
Steam: http://steamcommunity.com/id/ca-nemesis/

Reply
#9
PHP Code:
client_printidprint_console,"[%s] Isminiz, Steam ID'niz ve IP Adresiniz Server Tarafindan Kayit Altina Alinmistir.",szStag);
    
client_printidprint_console,"[%s] Isminiz, Steam ID'niz ve IP Adresiniz Server Tarafindan Kayit Altina Alinmistir.",szStag); 

bu şekilde düzelttim client_putinserverda yazmadı client_connect publicine deneyecem bide
MSN : [email protected]
WEBSİTE : www.matcharena.net
FACEBOOK : www.facebook.com/MatchArena

- MatchArena.NET -
Güvenli ve hızlı steam satışında doğru adres!

Reply
#10
Yine print_console yaptın. Yine konsola gönderdin yazıyı Smile print_chat yapıcaksın.

Ve bir yazı putinserver da görünmezse connect te hiç görünmez Smile

Bir kişi serverına baglanmak için istek gönderdiğinde olaylar şu sırayla gerçekleşir

1. Client Connect
2. Client Authorized
3. Client Putinserver


CS:GO ve CS 1.6 için ücretli eklenti yapılır.
Plugin yazmak isteyenlere yardımcı olabilirim.
Skype adresimden ulaşabilirsiniz:
destek_596
Steam: http://steamcommunity.com/id/ca-nemesis/

Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Haritaya Göre Cfg Açılarak Ayar Yapımı sonberkay 1 6,281 10-02-12, 20:58
Last Post: Schwertle_vbulletin4_import1

Foruma Atla:


Users browsing this thread: