Hayırlı Akşamlar
ilk konum sistem bana ait değil bilakis sistemi ben çıkarttım.
sistem sahibi Pasha37 dir. sonra alıntı çalıntı demiyesiniz
sistemde online sayacı vardı urllib dosyasından çekmekteydi urllib dosyasında bi kaç beceremediğim işlem yüzünden online sayacını kaldırdım
şuanki sistem hali
ilk konum sistem bana ait değil bilakis sistemi ben çıkarttım.
sistem sahibi Pasha37 dir. sonra alıntı çalıntı demiyesiniz
sistemde online sayacı vardı urllib dosyasından çekmekteydi urllib dosyasında bi kaç beceremediğim işlem yüzünden online sayacını kaldırdım
şuanki sistem hali
Kod:
Sistemi Çıkaran #// EviLShow Sistem Sahibi #// Pasha37 ############################################################################################################## #evilshov kalite = "" pingg = None ############################################################################################################## #aratılır class GameWindow(ui.ScriptWindow): #üstüne eklenir def evilshov(): global pingg while 1 == 1: pingg = int(re.findall("[0-9][0-9]", str(os.popen("%WINDIR%/system32/ping -n 1 google.com").readlines()[-1]))[0]) time.sleep(5) thread.start_new_thread(evilshov, ()) ############################################################################################################## #aratılır def OnUpdate(self): #altına eklenir def UpdateGameInfo(self): global pingg nUpdateFPS = app.GetUpdateFPS() fbs = "FPS: %3d" % (nUpdateFPS) gun = time.strftime("%d") ay = time.strftime("%B") yil = time.strftime("%Y") aylar = {"January": "Ocak", "Feburary": "Subat", "March": "Mart", "April": "Nisan", "May": "Mayis", "Jun": "Haziran", "July": "Temmuz", "August ": "Agustos", "September": "Eylul", "October": "Ekim", "November ": "Kasim", "December": "Aralik" } ayyeni = aylar[ay] saat = "Saat: " + time.strftime("%H.%M.%S") + " Tarih: " + gun + "." + ayyeni + "." + yil if pingg <= 30 and pingg > 0: kalite = "Mukemmel" elif pingg <= 60 and pingg > 30: kalite = "Orta" elif pingg <= 100 and pingg > 60: kalite = "Kotu" elif pingg >= 100: kalite = "Cok Kotu" else: kalite = "Bilinmiyor" self.PrintFps.SetText(fbs) self.PrintSaat.SetText(saat) self.PrintOyuncu.SetText(aktif) self.PrintBugun.SetText(bugunkac) self.PrintPing.SetText("Ping: " + str(pingg) + " Baglanti Kalitesi: " + kalite) ############################################################################################################## # aratılır class GameWindow(ui.ScriptWindow): # playerGaugenin altına eklenir ## PING-FPS self.evilshov_board = ui.BoardWithTitleBar() self.evilshov_board.SetPosition(wndMgr.GetScreenWidth() - 195, 160) self.evilshov_board.SetSize(200, 145) self.evilshov_board.AddFlag('movable') self.evilshov_board.AddFlag("float") self.evilshov_board.Show() self.PrintFps = ui.TextLine() self.PrintFps.SetDefaultFontName() self.PrintFps.SetParent(self.evilshov_board) self.PrintFps.SetPosition(75, 33) self.PrintFps.Show() self.PrintOyuncu = ui.TextLine() self.PrintOyuncu.SetDefaultFontName() self.PrintOyuncu.SetParent(self.evilshov_board) self.PrintOyuncu.SetPosition(55, 50) self.PrintOyuncu.Show() self.PrintBugun = ui.TextLine() self.PrintBugun.SetDefaultFontName() self.PrintBugun.SetParent(self.evilshov_board) self.PrintBugun.SetPosition(30, 70) self.PrintBugun.Show() self.PrintPing = ui.TextLine() self.PrintPing.SetDefaultFontName() self.PrintPing.SetParent(self.evilshov_board) self.PrintPing.SetPosition(27, 90) self.PrintPing.Show() self.PrintSaat = ui.TextLine() self.PrintSaat.SetDefaultFontName() self.PrintSaat.SetParent(self.evilshov_board) self.PrintSaat.SetPosition(20, 110) self.PrintSaat.Show() ## PING-FPS // ############################################################################################################## #aratılır def Close(self): self.confirmDialog = None # bulunup altına eklenir self.evilshov_board.Hide() self.PrintFps.Hide() self.PrintOyuncu.Hide() self.PrintBugun.Hide() self.PrintPing.Hide() self.PrintSaat.Hide() ############################################################################################################## # aratılır def OnUpdate(self): # altına eklenir if self.isShowGameInfo: self.UpdateGameInfo() ############################################################################################################## #//-- EvilShow --\\# # FPS Sistem # Sistem Sahibi : Pasha37
[FPS-PING] Sistemi Nedir ve Metin2 Özel Sunucularda Neden Kritiktir?
[FPS-PING] Sistemi Nedir?
[FPS-PING] (Frames Per Second - Ping), oyuncuların oyun deneyimini doğrudan etkileyen temel parametrelerden ikisidir. FPS, saniyedeki kare sayısını belirtirken, ping ise sunucuyla arasındaki gecikmeyi ifade eder. Özellikle Metin2 gibi gerçek zamanlı PVP sistemlerinin yoğun olduğu özel sunucularda, yüksek FPS ve düşük ping oynama keyfini ciddi anlamda artırır.
Metin2'de FPS Düşüklüğünü Etkileyen Faktörler
Metin2 özel sunucularında FPS düşüklüğü, hem istemci (client) tarafında hem de sunucu tarafında oluşabilecek problemlerden kaynaklanabilir. Bunlar arasında:
- Hatalı script yapılandırması: Yanlış yazılmış Python veya UIScript dosyaları performansı ciddi oranda düşürebilir.
- Kaynak kod optimizasyonu eksikliği: C++ tabanlı sunucu kaynak kodlarında hatalı döngüler, bellek sızıntısı gibi durumlar FPS düşüşlerine neden olabilir.
- Donanım yetersizliği: Sunucu donanımı yeterli değilse, yüksek oyuncu yoğunluğunda FPS ciddi şekilde düşebilir.
Ping Sorunları ve Çözüm Yolları
Ping değeri, oyuncuların oyun sunucusuna olan bağlantı süresini gösterir. Yüksek ping, oyuncularda gecikme, takılma ve PVP sırasında mağlubiyet gibi sorunlara yol açar. Ping değerini etkileyen faktörler:
- Sunucu lokasyonu: Oyuncularla fiziksel olarak uzak olan sunucular daha yüksek ping'e neden olur.
- Network bant genişliği: Yetersiz bant genişliği, veri aktarımını yavaşlatır.
- Sunucu yapılandırması: Hatalı yapılandırılmış auth ve game sunucu sistemleri ping üzerinde olumsuz etki bırakabilir.
FPS ve Ping Optimizasyonu İçin Öneriler
Sunucu Tarafında Yapılacaklar:
- C++ kaynak kodda gereksiz döngü ve sorguları kaldırın.
- DB (veritabanı) sorgularını optimize edin.
- Martysama ve diğer script editörlerinden faydalanarak hatalı Python scriptlerini düzeltin.
- Py Root ve Py GUI yapılandırmalarında performans odaklı tasarımlar yapın.
İstemci Tarafında Yapılacaklar:
- Grafik ayarlarını donanıma uygun şekilde optimize edin.
- Gereksiz modloader ve scriptleri devre dışı bırakın.
- Sunucuya en yakın coğrafi konumdaki sunuculara bağlanın.
Metin2 Özel Sunucularında FPS-PING Sistemi Nasıl Ölçülür?
Oyuncular genellikle FPS göstergesi için debug komutlarını kullanabilir. Sunucu geliştiricileri ise log sistemleriyle FPS değerlerini analiz edebilir. Ping ise genellikle oyun içi sistemlerde doğrudan gösterilir. Geliştiriciler, auth ve game server loglarında ping değerlerini izleyebilirler.
Sonuç
[FPS-PING] sistemi, Metin2 özel sunucularının kalitesini belirleyen en önemli unsurlardan biridir. Hem geliştirici hem de oyuncu tarafında dikkat edilmesi gereken bu iki parametre, doğru yapılandırıldığında sunucunuzun rekabet gücünü ciddi şekilde artırır. Metin2 Lobby olarak bizler, bu tür gelişmiş sistemleri öğrenmek ve uygulamak isteyen tüm geliştiricilere destek vermeye devam ediyoruz.
[FPS-PING] System: What It Is and Why It's Critical for Metin2 Private Servers?
What is the [FPS-PING] System?
[FPS-PING] (Frames Per Second - Ping) are two fundamental parameters that directly affect the gaming experience of players. While FPS indicates the number of frames per second, ping refers to the delay between the player and the server. Especially in private servers with intense PVP systems like Metin2, high FPS and low ping significantly enhance gameplay satisfaction.
Factors Affecting FPS Drops in Metin2
FPS drops in Metin2 private servers can stem from issues on both the client and server side. These include:
- Incorrect script configuration: Poorly written Python or UIScript files can significantly reduce performance.
- Lack of source code optimization: In C++ based server codes, errors such as incorrect loops or memory leaks can cause FPS drops.
- Insufficient hardware: If the server hardware is inadequate, FPS may drop significantly under high player load.
Ping Issues and Solutions
The ping value shows the connection time between players and the game server. High ping causes delays, stuttering, and defeats during PVP matches. Factors affecting ping values:
- Server location: Servers physically distant from players cause higher ping values.
- Network bandwidth: Insufficient bandwidth slows down data transfer.
- Server configuration: Incorrectly configured auth and game server systems can negatively impact ping.
Suggestions for FPS and Ping Optimization
On the Server Side:
- Remove unnecessary loops and queries in C++ source code.
- Optimize database queries.
- Use tools like Martysama to fix faulty Python scripts.
- Design performance-oriented layouts in Py Root and Py GUI configurations.
On the Client Side:
- Adjust graphics settings according to hardware capacity.
- Disable unnecessary modloaders and scripts.
- Connect to servers located closest to your geographical region.
How to Measure FPS-PING Systems in Metin2 Private Servers?
Players often use debug commands to check FPS indicators. Developers, on the other hand, can analyze FPS values via log systems. Ping is usually displayed directly within the game interface. Developers can monitor ping values through logs of auth and game servers.
Conclusion
The [FPS-PING] system is one of the most important factors determining the quality of Metin2 private servers. When properly configured on both the developer and player sides, these two parameters significantly increase the competitive strength of your server. As Metin2 Lobby, we continue to support all developers who wish to learn and implement such advanced systems.
