Reklam gösterimini engelleyici yazılım kullandığınızı görüyoruz.
Sitemizin ayakta kalıp sizlere hizmet edebilmek için en büyük gelir kaynağı sayfamızda gösterilen reklamlardır.
Reklam gösterimde bizim sayfamıza ayrıcalık tanıyarak ayakta kalmamıza destek olmak ister misiniz ?

Silinmiş Konu   | Server adinda online sayisi

Konu

#1
Son Düzenleme: 27-02-2019, Saat: 18:21, Düzenleyen: MawiLarq.
Eklenti İsmi: Server Bilgiler
Eklenti Yapımcısı: Berk
Eklentinin Sürümü: 1.0
Eklenti Hakkında: Serverdeki online sayisini serverin adına koyar ve bunu çok stabil olarak yapar.
Ekran Görüntüsü:
[Resim: 398ea431.JPG]

Eklenti Dosyası:


.sma bmOnlineSeverAd.sma (Dosya Boyutu: 793 Bayt | İndirme Sayısı: 55)


#2
Son Düzenleme: 27-02-2019, Saat: 18:23, Düzenleyen: ITenGriTR.
Çok güzel eklenti, zekice olmuş çıkıp girme olayları olduğunda bunu yaptırmak


Pouex(Görkem Bacısısikişenoğlu)'in anasını götünden sikeyim.
Emirhan SkürtSkürt seninde ananı sikicem sıradasın.
Dediğim gibi ferudun ve berke lafım yok.
forum.csduragi.com
#3
Teşekkürler yerimizi kapalim


#4
Teşekkürler


#5
Son Düzenleme: 28-02-2019, Saat: 18:48, Düzenleyen: ITenGriTR.
set_task 0.5' in mantığını açıkçası tam anlayamadım. Acaba eklentinin orijinalinde set task vardı da ondan mı set task eklediniz yoksa giren oyuncunun tabda görünmesini beklemek amacıyla mı.  Bu amaçlaysa sanırım gereksiz. Çünkü Client putin server fonksiyonu calıştığında giren oyuncu zaten tabda bulunuyor. Ayrıca çok stabil demişsiniz, sanırım basit düşünüyorsunuz.

Iki kodu algoritma analizine sokarsak:

Kod:
Oyuncu sayısını bulmak için komudun arka planında 
for(new i=0;i<32;i++) döngüsü vardır. 

i=0 işlemi 1 defa
i<32 kontrolu 33 defa 
i++ işlemi 32 defa yaptırılıyor.
server cmd işlemi de 1 defa.
Yani bmGuncelle fonksiyonun maliyeti : 67

oyuncu oyuna girdiğinde : set_task + bmgüncelle fonkksiyonu çağrılıyor : 2 işlem.

1 birim saniyede N oyuncu oyuna girdiğinde kodun maliyeti : N*67+2 = 67N+2


Orijinal eklentide ise : 

Oyuncu sayısını bulmak için komudun arka planında 
for(new i=0;i<32;i++) döngüsü vardır. 

i=0 işlemi 1 defa
i<32 kontrolu 33 defa 
i++ işlemi 32 defa yaptırılıyor.
server cmd işlemi de 1 defa.
Yani devam fonksiyonun maliyeti : 67

oyuncu oyuna girdiğinde : remove_task + set_task + devam fonksiyonu çağrılıyor : 3 işlem.

1 birim saniyede N oyuncu oyuna girdiğinde : N+67+3 = N+70

(Burda çarpma işlemine koymamamızın sebebi 2 oyuncu aynı anda girdiği anda ikinci giren oyuncu birinci girenin set_task ettirdiği işlemi remove_task ettirmesi.)

Sizinki 67*N+2' lik bir verimle çalışırken eklentinin orijinali 2*N+70 verimle çalışıyor. Yani aynı anda birden fazla oyuncu girerse orijinal eklenti daha verimli oluyor fakat genele vurursak sizinki daha verimli oluyor. 10/32'lik bir serverde farklı bir map açıldığını farz edelim. N yerine 10 bile koysak ciddi fark yaratıyor. 


Orijinal hali : 
Kod:
#include <amxmodx>

#define SERVERISMI "WEBDIYO"

public devam() {
    new nd[128];
    formatex(nd, charsmax(nd), "[%d/32] %s",get_playersnum(), SERVERISMI);
    server_cmd("hostname ^"%s^"",nd);

    message_begin(MSG_BROADCAST,get_user_msgid("ServerName"));
    write_string(nd);
    message_end();
}
public client_putinserver(id) remove_task(1337),set_task(1.0,"devam",1337);
public client_disconnected(id) remove_task(1337),set_task(1.0,"devam",1337);
public plugin_init() register_plugin("host", "1.0", "nd");




C, Java, SQL
#6
(27-02-2019, Saat: 18:20)ITenGriTR Adlı Kullanıcıdan Alıntı: Eklenti İsmi: Server Bilgiler
Eklenti Yapımcısı: Berk
Eklentinin Sürümü: 1.0
Eklenti Hakkında: Serverdeki online sayisini serverin adına koyar ve bunu çok stabil olarak yapar.
Ekran Görüntüsü:
[Resim: 398ea431.JPG]

Eklenti Dosyası:
Eyvallah başarılı eklenti.


#7
Son Düzenleme: 28-02-2019, Saat: 18:49, Düzenleyen: ITenGriTR.
(28-02-2019, Saat: 16:34)javandroid Adlı Kullanıcıdan Alıntı: set_task 0.5' in mantığını açıkçası tam anlayamadım. Acaba eklentinin orijinalinde set task vardı da ondan mı set task eklediniz yoksa giren oyuncunun tabda görünmesini beklemek amacıyla mı.  Bu amaçlaysa sanırım gereksiz. Çünkü Client putin server fonksiyonu calıştığında giren oyuncu zaten tabda bulunuyor. Ayrıca çok stabil demişsiniz, sanırım basit düşünüyorsunuz.

Iki kodu algoritma analizine sokarsak:

Kod:
Oyuncu sayısını bulmak için komudun arka planında 
for(new i=0;i<32;i++) döngüsü vardır. 

i=0 işlemi 1 defa
i<32 kontrolu 33 defa 
i++ işlemi 32 defa yaptırılıyor.
server cmd işlemi de 1 defa.
Yani bmGuncelle fonksiyonun maliyeti : 67

oyuncu oyuna girdiğinde : set_task + bmgüncelle fonkksiyonu çağrılıyor : 2 işlem.

1 birim saniyede N oyuncu oyuna girdiğinde kodun maliyeti : N*67+2 = 67N+2


Orijinal eklentide ise : 

Oyuncu sayısını bulmak için komudun arka planında 
for(new i=0;i<32;i++) döngüsü vardır. 

i=0 işlemi 1 defa
i<32 kontrolu 33 defa 
i++ işlemi 32 defa yaptırılıyor.
server cmd işlemi de 1 defa.
Yani devam fonksiyonun maliyeti : 67

oyuncu oyuna girdiğinde : remove_task + set_task + devam fonksiyonu çağrılıyor : 3 işlem.

1 birim saniyede N oyuncu oyuna girdiğinde : N+67+3 = N+70

(Burda çarpma işlemine koymamamızın sebebi 2 oyuncu aynı anda girdiği anda ikinci giren oyuncu birinci girenin set_task ettirdiği işlemi remove_task ettirmesi.)

Sizinki 67*N+2' lik bir verimle çalışırken eklentinin orijinali 2*N+70 verimle çalışıyor. Yani aynı anda birden fazla oyuncu girerse orijinal eklenti daha verimli oluyor fakat genele vurursak sizinki daha verimli oluyor. 10/32'lik bir serverde farklı bir map açıldığını farz edelim. N yerine 10 bile koysak ciddi fark yaratıyor. 


Orijinal hali : 
Kod:
#include <amxmodx>

#define SERVERISMI "WEBDIYO"

public devam() {
    new nd[128];
    formatex(nd, charsmax(nd), "[%d/32] %s",get_playersnum(), SERVERISMI);
    server_cmd("hostname ^"%s^"",nd);

    message_begin(MSG_BROADCAST,get_user_msgid("ServerName"));
    write_string(nd);
    message_end();
}
public client_putinserver(id) remove_task(1337),set_task(1.0,"devam",1337);
public client_disconnected(id) remove_task(1337),set_task(1.0,"devam",1337);
public plugin_init() register_plugin("host", "1.0", "nd");

remove_task'ı eklemedim çünkü taska girdikten sonra bir oyuncu girerse zaten task tamamlandığı için boşuna kaldırmak istemedim 0.5 saniye farkla maximum oyuncu girme anı mapin açılışın ilk anıdır onu engelleyebilriz, iyi forumlar.



#8
Bu eklenti gerçekten serveri yorabilir
Mesela pubg modda bu eklentiyi kullanmam aniden çökme yaratabilir
Genede güzel eklenti eline sağlık


#9
(28-02-2019, Saat: 17:57)PawnMaster Adlı Kullanıcıdan Alıntı: Bu eklenti gerçekten serveri yorabilir
Mesela pubg modda bu eklentiyi kullanmam aniden çökme yaratabilir
Genede güzel eklenti eline sağlık
Bi sorun olmıcaktır.


#10
Pubg main bile çok fazla for döngüsü yaratınca serveri çöktürüyor bir sorun olacaktır eminim




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

Yorum yapmak için üye olmanız gerekiyor

ya da

Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
Silinmiş Konu   | CSOyuncu.com - Online Oyun Sunucuları // Grafik Web Tasarımı mrstipfan 2 297 18-08-2020, Saat: 15:00
Son Yorum: MawiLarq
Silinmiş Konu   | Server Benden Ts3 Senden adamkarabela 1 345 05-12-2019, Saat: 18:16
Son Yorum: MawiLarq
Silinmiş Konu   | Surf Server Mod Plugin Yardımı caner5706 1 320 25-10-2019, Saat: 19:55
Son Yorum: By.KinG
Silinmiş Konu   | Surf Server Mod Plugin Yardımı caner5706 5 384 25-10-2019, Saat: 19:55
Son Yorum: By.KinG
Silinmiş Konu   | Surf Server Mod Plugin Yardımı caner5706 1 336 25-10-2019, Saat: 19:55
Son Yorum: By.KinG

Task