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

https://discord.gg/43gGDQe6tS

Pro Elbaşı Bilgi

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
#skynlexx#
Mesajlar: 33
Kayıt: Pzr Eyl 01, 2019 9:41 am

Pro Elbaşı Bilgi

Mesaj gönderen #skynlexx# »

Eklenti İsmi : Pro Serverler için elbaşı bilgi
Yapımcısı : SkyNLexX
Sürüm : 1.0
Açıklama : El başı Bilgi vermeye yarar

Ekran Görüntüsü :

Resim
Resim


Cvar Ayarları : #define TAG kısmını kendi klan isminizi yazabilirsiniz.

Kod: Tümünü seç

#include <amxmodx>
#include <amxmisc>
#include <cstrike>

#define PLUGIN "El Basi Mesaj"
#define AUTHOR "SkyNLexX"

#define TAG "[SERVER BILGI]"
new mapismi[32];

public plugin_init() {
	register_plugin(PLUGIN, AMXX_VERSION_STR, AUTHOR)
	register_logevent("elbasi", 2, "1=Round_Start");
	get_mapname(mapismi,31)
}

public elbasi(){
client_print_color(0,0,"^3################################################",TAG);
client_print_color(0,0,"^4%s ^1Aktif Oyuncu: ^3TE ^4(%d) || ^3CT ^4(%d)",TAG,get_playersnum_ex(GetPlayers_None | GetPlayers_MatchTeam, "TERRORIST"),get_playersnum_ex(GetPlayers_None | GetPlayers_MatchTeam, "CT"));
client_print_color(0,0,"^4%s ^1Oynanan Harita ^4%s",TAG,mapismi);
client_print_color(0,0,"^4%s ^3Live ^3# ^3Live ^3# ^4Live ^4# ",TAG);	
}
Bu mesaja eklenen dosyaları görüntülemek için gerekli izinlere sahip değilsiniz.

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

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

Pro Elbaşı Bilgi Optimize

Mesaj gönderen Colditz »

Konu onaylandı fakat geliştirilebilir.

Kod: Tümünü seç

#include <amxmodx>
#include <reapi>

new const Tag[] = "[forum.csd]";
new g_szMapName[32];

public plugin_init() {
	register_plugin("Round Start Info", "1.0", "PurposeLess");

	RegisterHookChain(RG_CSGameRules_RestartRound, "@CSGameRules_RestartRound", .post = false);

	get_mapname(g_szMapName, charsmax(g_szMapName));
}

@CSGameRules_RestartRound() {
	client_print_color(0, print_team_red, "^1##########[^4TER ^3%d^1-^3%d ^4CT^1]##########", get_member_game(m_iNumTerroristWins), get_member_game(m_iNumCTWins));
	client_print_color(0, print_team_blue, "^4%s ^1Aktif Oyuncu: ^3TE ^4(%d) || ^3CT ^4(%d)", Tag, get_member_game(m_iNumTerrorist), get_member_game(m_iNumCT));
	client_print_color(0, print_team_grey, "^4%s ^1Oynanan Harita: ^3%s", Tag, g_szMapName);
	client_print_color(0, 0, "^4%s ^3Live ^3# ^4Live ^4# ^3Live ^3#", Tag);
}
********.png
Bu mesaja eklenen dosyaları görüntülemek için gerekli izinlere sahip değilsiniz.

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

Konu Sahibi
#skynlexx#
Mesajlar: 33
Kayıt: Pzr Eyl 01, 2019 9:41 am

Pro Elbaşı Bilgi Optimize

Mesaj gönderen #skynlexx# »

Colditz yazdı: Prş Ara 24, 2020 5:46 pm Konu onaylandı fakat geliştirilebilir.

Kod: Tümünü seç

#include <amxmodx>
#include <reapi>

new const Tag[] = "[forum.csd]";
new g_szMapName[32];

public plugin_init() {
	register_plugin("Round Start Info", "1.0", "PurposeLess");

	RegisterHookChain(RG_CSGameRules_RestartRound, "@CSGameRules_RestartRound", .post = false);

	get_mapname(g_szMapName, charsmax(g_szMapName));
}

@CSGameRules_RestartRound() {
	client_print_color(0, print_team_red, "^1##########[^4TER ^3%d^1-^3%d ^4CT^1]##########", get_member_game(m_iNumTerroristWins), get_member_game(m_iNumCTWins));
	client_print_color(0, print_team_blue, "^4%s ^1Aktif Oyuncu: ^3TE ^4(%d) || ^3CT ^4(%d)", Tag, get_member_game(m_iNumTerrorist), get_member_game(m_iNumCT));
	client_print_color(0, print_team_grey, "^4%s ^1Oynanan Harita: ^3%s", Tag, g_szMapName);
	client_print_color(0, 0, "^4%s ^3Live ^3# ^4Live ^4# ^3Live ^3#", Tag);
}
********.png
Güzel katkı olmuş eline sağlık :) Reapiye alışamadım gitti :)

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

Ömer TELLİ
Yönetici
Mesajlar: 5427
Kayıt: Pzr Eyl 06, 2015 6:12 pm
Server Ip/DNS: dm.csduragi.com
Clan İsmi: csd

Pro Elbaşı Bilgi

Mesaj gönderen Ömer TELLİ »

Her eklentide reapi kullanma mecburiyeti hissetmeyin, ekstra bir modül geriye haliyle dönük uyumluluklar konusunda sıkıntı çıkabilir, keza şu eklentide bir performans getirisi olmaz.

Geliştirme yapılacak ise daha çok kişiselleştirilebilir olmalı.
İnsanlar görüntülen mesaj satırlarını dil dosyası veya cvar üzerinden değiştirebilmeli. Dil dosyası üzerinden değişiklik insanlara biraz zor gelebiliyor,her ne kadar önermesem de cvar daha uygun olacaktır.

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

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

Pro Elbaşı Bilgi

Mesaj gönderen Colditz »

Ömer TELLİ yazdı: Prş Ara 24, 2020 11:18 pm Her eklentide reapi kullanma mecburiyeti hissetmeyin, ekstra bir modül geriye haliyle dönük uyumluluklar konusunda sıkıntı çıkabilir, keza şu eklentide bir performans getirisi olmaz.

Geliştirme yapılacak ise daha çok kişiselleştirilebilir olmalı.
İnsanlar görüntülen mesaj satırlarını dil dosyası veya cvar üzerinden değiştirebilmeli. Dil dosyası üzerinden değişiklik insanlara biraz zor gelebiliyor,her ne kadar önermesem de cvar daha uygun olacaktır.
Buradaki reapi kullanma amacım performanstan dolayı değil de t win, ct win gibi değerleri de çekmek adınaydı. Ve ayrıca get_member_game komutunun get_playersnum dan daha hızlı oyuncu sayısını çekmesi. Dil dosyası veya cvar ile değiştirilmesi iyi olabilir. Ben sadece bir örnek attım. Yazardan geliştirmesini bekliyorum.

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

Yek'-ta
Mesajlar: 9624
Kayıt: Cmt Eyl 12, 2015 12:40 pm
İletişim:

Pro Elbaşı Bilgi

Mesaj gönderen Yek'-ta »

Madem her kafadan bir ses çıkıyor ve mükemmeli arıyorsunuz.
https://github.com/alliedmodders/amxmod ... x.cpp#L401

Kod: Tümünü seç

#include <amxmodx>
#include <reapi>

new const Tag[] = "[forum.csd]";
new g_szMapName[32];
new oyuncusayilari[4];
public plugin_init() {
	register_plugin("Round Start Info", "1.0", "PurposeLess");

	RegisterHookChain(RG_CSGameRules_RestartRound, "@CSGameRules_RestartRound", .post = false);

	get_mapname(g_szMapName, charsmax(g_szMapName));
}

@CSGameRules_RestartRound() {
	oyuncusayileri[0]=get_member_game(m_iNumTerrorist);
	oyuncusayilari[1]=get_member_game(m_iNumCT);
	oyuncusayilari[2]=get_member_game(m_iNumTerroristWins);
	oyuncusayilari[3]=get_member_game(m_iNumCTWins);
	client_print_color(0, print_team_red, "^1##########[^4TER ^3%d^1-^3%d ^4CT^1]##########", oyuncusayilari[2], oyuncusayilari[3]);
	client_print_color(0, print_team_blue, "^4%s ^1Aktif Oyuncu: ^3TE ^4(%d) || ^3CT ^4(%d)", Tag, oyuncusayileri[0], oyuncusayileri[1]);
	client_print_color(0, print_team_grey, "^4%s ^1Oynanan Harita: ^3%s", Tag, g_szMapName);
	client_print_color(0, 0, "^4%s ^3Live ^3# ^4Live ^4# ^3Live ^3#", Tag);
}
Şöyle bir şeyler düşünün

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

Konu Sahibi
#skynlexx#
Mesajlar: 33
Kayıt: Pzr Eyl 01, 2019 9:41 am

Pro Elbaşı Bilgi

Mesaj gönderen #skynlexx# »

Ömer TELLİ yazdı: Prş Ara 24, 2020 11:18 pm Her eklentide reapi kullanma mecburiyeti hissetmeyin, ekstra bir modül geriye haliyle dönük uyumluluklar konusunda sıkıntı çıkabilir, keza şu eklentide bir performans getirisi olmaz.

Geliştirme yapılacak ise daha çok kişiselleştirilebilir olmalı.
İnsanlar görüntülen mesaj satırlarını dil dosyası veya cvar üzerinden değiştirebilmeli. Dil dosyası üzerinden değişiklik insanlara biraz zor gelebiliyor,her ne kadar önermesem de cvar daha uygun olacaktır.
Kesinlikle katılıyorum. Ilerde reapinin arşive taşınacağı ve hic kullanilamayacak gibi hissediyorum nedense.

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

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

Pro Elbaşı Bilgi

Mesaj gönderen Colditz »

#skynlexx# yazdı: Cum Ara 25, 2020 12:19 am Kesinlikle katılıyorum. Ilerde reapinin arşive taşınacağı ve hic kullanilamayacak gibi hissediyorum nedense.
Böyle bir şeyin olma ihtimali CS 1.6 oyununun tamamen bitme olasılığından daha zor benim düşünceme göre. Oyuna zaten reapi sayesinde yeni şeyler getiriliyor. Yani evet modüllerle de yapılıyordu bunlar fakat ne kadar sağlıklıydı bilemiyorum. Şu anlık işimize yarıyorken kullanmamamızın bir nedeni yok.

+
@Yek'-ta, Güzel noktaya değindin. Bunu kodladıktan sonra düşünmüştüm fakat çok üşendim yapmaya açıkçası. Değeri public içine de alabiliriz.

Kod: Tümünü seç

@CSGameRules_RestartRound() {
	new oyuncusayilari[4];
	oyuncusayilari[0]=get_member_game(m_iNumTerrorist);
	oyuncusayilari[1]=get_member_game(m_iNumCT);
	oyuncusayilari[2]=get_member_game(m_iNumTerroristWins);
	oyuncusayilari[3]=get_member_game(m_iNumCTWins);

	client_print_color(0, print_team_red, "^1##########[^4TER ^3%d^1-^3%d ^4CT^1]##########", oyuncusayilari[2], oyuncusayilari[3]);
	client_print_color(0, print_team_blue, "^4%s ^1Aktif Oyuncu: ^3TE ^4(%d) || ^3CT ^4(%d)", Tag, oyuncusayilari[0], oyuncusayilari[1]);
	client_print_color(0, print_team_grey, "^4%s ^1Oynanan Harita: ^3%s", Tag, g_szMapName);
	client_print_color(0, 0, "^4%s ^3Live ^3# ^4Live ^4# ^3Live ^3#", Tag);
}

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

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

Pro Elbaşı Bilgi

Mesaj gönderen bestcore »

Colditz yazdı: Cum Ara 25, 2020 12:42 am
#skynlexx# yazdı: Cum Ara 25, 2020 12:19 am Kesinlikle katılıyorum. Ilerde reapinin arşive taşınacağı ve hic kullanilamayacak gibi hissediyorum nedense.
Böyle bir şeyin olma ihtimali CS 1.6 oyununun tamamen bitme olasılığından daha zor benim düşünceme göre. Oyuna zaten reapi sayesinde yeni şeyler getiriliyor. Yani evet modüllerle de yapılıyordu bunlar fakat ne kadar sağlıklıydı bilemiyorum. Şu anlık işimize yarıyorken kullanmamamızın bir nedeni yok.

+
@Yek'-ta, Güzel noktaya değindin. Bunu kodladıktan sonra düşünmüştüm fakat çok üşendim yapmaya açıkçası. Değeri public içine de alabiliriz.

Kod: Tümünü seç

@CSGameRules_RestartRound() {
	new oyuncusayilari[4];
	oyuncusayilari[0]=get_member_game(m_iNumTerrorist);
	oyuncusayilari[1]=get_member_game(m_iNumCT);
	oyuncusayilari[2]=get_member_game(m_iNumTerroristWins);
	oyuncusayilari[3]=get_member_game(m_iNumCTWins);

	client_print_color(0, print_team_red, "^1##########[^4TER ^3%d^1-^3%d ^4CT^1]##########", oyuncusayilari[2], oyuncusayilari[3]);
	client_print_color(0, print_team_blue, "^4%s ^1Aktif Oyuncu: ^3TE ^4(%d) || ^3CT ^4(%d)", Tag, oyuncusayilari[0], oyuncusayilari[1]);
	client_print_color(0, print_team_grey, "^4%s ^1Oynanan Harita: ^3%s", Tag, g_szMapName);
	client_print_color(0, 0, "^4%s ^3Live ^3# ^4Live ^4# ^3Live ^3#", Tag);
}
Mesela is_user_alive(id) bu kodu publicde new canli = is_user_alive(id); şeklinde tanıtıp ve publicde sadece 1 kere kullandık diyelim, bunun bize optimize açısından yararı var mıdır ? 3 4 kere kullanınca tamam optimize oluyor fakat 1 kere kullanıncada oluyor mu ?

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

Konu Sahibi
#skynlexx#
Mesajlar: 33
Kayıt: Pzr Eyl 01, 2019 9:41 am

Pro Elbaşı Bilgi

Mesaj gönderen #skynlexx# »

bestcore yazdı: Cum Ara 25, 2020 4:33 pm
Colditz yazdı: Cum Ara 25, 2020 12:42 am
#skynlexx# yazdı: Cum Ara 25, 2020 12:19 am Kesinlikle katılıyorum. Ilerde reapinin arşive taşınacağı ve hic kullanilamayacak gibi hissediyorum nedense.
Böyle bir şeyin olma ihtimali CS 1.6 oyununun tamamen bitme olasılığından daha zor benim düşünceme göre. Oyuna zaten reapi sayesinde yeni şeyler getiriliyor. Yani evet modüllerle de yapılıyordu bunlar fakat ne kadar sağlıklıydı bilemiyorum. Şu anlık işimize yarıyorken kullanmamamızın bir nedeni yok.

+
@Yek'-ta, Güzel noktaya değindin. Bunu kodladıktan sonra düşünmüştüm fakat çok üşendim yapmaya açıkçası. Değeri public içine de alabiliriz.

Kod: Tümünü seç

@CSGameRules_RestartRound() {
	new oyuncusayilari[4];
	oyuncusayilari[0]=get_member_game(m_iNumTerrorist);
	oyuncusayilari[1]=get_member_game(m_iNumCT);
	oyuncusayilari[2]=get_member_game(m_iNumTerroristWins);
	oyuncusayilari[3]=get_member_game(m_iNumCTWins);

	client_print_color(0, print_team_red, "^1##########[^4TER ^3%d^1-^3%d ^4CT^1]##########", oyuncusayilari[2], oyuncusayilari[3]);
	client_print_color(0, print_team_blue, "^4%s ^1Aktif Oyuncu: ^3TE ^4(%d) || ^3CT ^4(%d)", Tag, oyuncusayilari[0], oyuncusayilari[1]);
	client_print_color(0, print_team_grey, "^4%s ^1Oynanan Harita: ^3%s", Tag, g_szMapName);
	client_print_color(0, 0, "^4%s ^3Live ^3# ^4Live ^4# ^3Live ^3#", Tag);
}
Mesela is_user_alive(id) bu kodu publicde new canli = is_user_alive(id); şeklinde tanıtıp ve publicde sadece 1 kere kullandık diyelim, bunun bize optimize açısından yararı var mıdır ? 3 4 kere kullanınca tamam optimize oluyor fakat 1 kere kullanıncada oluyor mu ?
Örnek Optimizasyonu vermiş zaten :)

Kod: Tümünü seç

mesela 4 defa değişken oluşturacağına 1 adet değişken tanımla bunu böl daha fazla koddan kurtulursun ve optimizeli bir şekilde ilerler.
	new oyuncusayilari[4];
	oyuncusayilari[0]=get_member_game(m_iNumTerrorist);
	oyuncusayilari[1]=get_member_game(m_iNumCT);
	oyuncusayilari[2]=get_member_game(m_iNumTerroristWins);
	oyuncusayilari[3]=get_member_game(m_iNumCTWins);

Link:
Linklerini gizle
Linki Kopyala
Cevapla