Merhabalar,
Forum içerisinde çok sayıda eksik, tam olarak doğru çalışmayan ve sorunlar yaratan FPS ayarlarını gördüm. Bunu hepsini denediğim için rahatça söyleyebilirim.
Aynı zamanda bu tarz basit işlemleri "Ücretli" olarak satmaya çalışanlar da var.
Aşağıdaki işlemleri gerçekleştirdiğinizde FPS'iniz 250 ye sabitlenecektir. Eski bir metin2 C++ formunda bıldu, her türlü testten geçirdim ve kullanmanız için size sunuyorum.
Kod:
C++: src\Client EterBase\Timer.cpp Fonksiyonu bulun. Kod: CTimer::GetElapsedMillisecond() İçerisinde Kod: return 16 + (m_index & 1); Aşağıdaki ile değiştirin. Kod: return 3 + (m_index & 3); Fonksiyonu bulun. Kod: CTimer::Advance() İçerisinde Kod: m_dwCurrentTime += 16 + (m_index & 1); Aşağıdaki ile değiştirin. Kod: m_dwCurrentTime += 3 + (m_index & 3); GameLib\GameType.cpp Fonksiyonu bulun. Kod: extern float g_fGameFPS = 60.0f; Aşağıdaki ile değiştirin. Kod: extern float g_fGameFPS = 250.0f; EterPythonLib\PythonWindow.cpp Fonksiyonu bulun. Kod: CAniImageBox::CAniImageBox(PyObject * ppyObject) İçerisinde Kod: m_byDelay(4), Aşağıdaki ile değiştirin. Kod: m_byDelay(13), GameLib\MapOutdoorWater.cpp Fonksiyonu bulun. Kod: CMapOutdoor::RenderWater() İçerisinde Kod: STATEMANAGER.SetTexture(0, m_WaterInstances[((ELTimer_GetMSec() / 70) % 30)].GetTexturePointer()->GetD3DTexture()); Aşağıdaki ile değiştirin. Kod: STATEMANAGER.SetTexture(0, m_WaterInstances[((ELTimer_GetMSec() / 30) % 30)].GetTexturePointer()->GetD3DTexture()); UserInterface\PythonApplication.cpp Aşağıdaki değerleri bulu, bu harita değiştirmesinde, hareketlerdeki hız sorunu olmaması için. Kod: float c_fDefaultCameraRotateSpeed = 1.5f; float c_fDefaultCameraPitchSpeed = 1.5f; float c_fDefaultCameraZoomSpeed = 0.05f; Aşağıdaki ile değiştirin. Kod: float c_fDefaultCameraRotateSpeed = 0.5f; float c_fDefaultCameraPitchSpeed = 0.2f; float c_fDefaultCameraZoomSpeed = 0.007f; Bunu da bulun Kod: double g_specularSpd=0.007f; Ve bununla değiştirin. Kod: double g_specularSpd=0.0017f; Source ile işimiz bitti. Sıra Pack içerisinde. root\uitaskbar.py Bunu bulun Kod: if.constInfo.IN_GAME_SHOP_ENABLE: İçerisindeki bu değere gelin Kod: self.rampageGauge1.OnMouseOverIn = ui.__mem_func__(self.__RampageGauge_OverIn) Altına ekleyin Kod: self.rampageGauge1.SetDelay(13) Bunu bulun Kod: self.rampageGauge2.OnMouseLeftButtonUp = ui.__mem_func__(self.__RampageGauge_Click) Altına ekleyin Kod: self.rampageGauge2.SetDelay(13) Bunu bulun Kod: self.hpGauge = self.GetChild("HPGauge") Altına ekleyin Kod: self.hpGauge.SetDelay(13) Bunu bulun Kod: self.mpGauge = self.GetChild("SPGauge") Altına ekleyin Kod: self.mpGauge.SetDelay(13) Bunu bulun Kod: self.stGauge = self.GetChild("STGauge") Altına ekleyin Kod: self.stGauge.SetDelay(13)
C++ / Python - FPS Değerini Değiştirme
Metin2 özel sunucularında performans optimizasyonu yaparken FPS (Frame Per Second) ayarları oldukça önemlidir. Oyun deneyimi, özellikle PVP sistemlerinde yüksek FPS değerleriyle doğrudan ilişkilidir. Bu yazıda, Metin2 özel sunucularında C++ ve Python tabanlı sistemler üzerinden FPS değerlerinin nasıl değiştirileceği ele alınacaktır. Bu işlem, hem client hem de server tarafında değişiklikler gerektirebilir.
FPS Nedir ve Neden Önemlidir?
FPS, yani Saniyedeki Kare Sayısı, oyun sırasında ekranda gösterilen kare sayısını ifade eder. Yüksek FPS, daha akıcı ve sorunsuz bir oyun deneyimi sağlar. Özellikle Metin2 gibi hızlı tempolu savaş sistemlerine sahip oyunlarda, düşük FPS oyun içi gecikmelere ve performans kayıplarına neden olabilir. Bu sebeple, geliştiriciler genellikle FPS değerlerini optimize etmek istemezler.
C++ Tarafında FPS Ayarları
Metin2 client tarafında FPS değerleri genellikle C++ kodları ile kontrol edilir. Client src dosyalarında bulunan rendering ve frame rate yönetimi yapan sınıflar incelenmelidir. Öncelikle, client src dosyasındaki 'game' veya 'system' klasörlerinde yer alan 'frame.cpp', 'wndmgr.cpp' gibi dosyalarda FPS ile ilgili tanımlamalar yapılabilir.
Örneğin, bir sabit olarak tanımlanmış maksimum FPS değeri şu şekilde görünebilir:
MAX_FPS = 60;
Bu değeri artırarak (örneğin 120 veya 144) oyunun daha fazla kare oluşturmasını sağlayabilirsiniz. Ancak bu işlem, donanım kaynaklarını da fazlasıyla tüketebilir. Bu nedenle testlerle desteklenmelidir.
Python Tarafında FPS Kontrolü[/COORD]
Python tarafında, genellikle UI sistemleri ve bazı oyun içi kontroller bu dille yapılmaktadır. Metin2 özel sunucularında 'uiscript', 'root', 'locale' gibi Python dosyaları, oyun içi arayüzün davranışlarını kontrol eder. Ancak FPS doğrudan Python tarafında değil, genellikle C++ ile entegre çalışan sistemler üzerinden kontrol edilir.
Ancak bazı durumlarda, oyun içi FPS göstergesi veya ayar menüsü Python ile yazılmıştır. Bu durumda, örneğin bir ayar penceresi üzerinden kullanıcıdan alınan FPS değeri C++ tarafına aktarılabilir. Bu işlem için Python ile C++ arasında bir API bağlantısı kurulmalıdır.
Uyarı: FPS Arttırımı Performans Sorunlarına Neden Olabilir
FPS değerlerini yükseltmek, donanımınızın desteklememesi durumunda 오히려 oyun performansını düşürebilir. Özellikle eski nesil donanımlarda yüksek FPS ayarları, grafik kartı ve CPU üzerinde ciddi yük oluşturabilir. Bu yüzden FPS değerleri, kullanıcı donanımına göre dinamik olarak ayarlanmalıdır.
FPS Ayarının Metin2 PVP Sistemleri Üzerinde Etkisi
PVP sistemlerinde, özellikle turnuvalar ve savaş anları gibi kritik anlarda FPS değeri, oyuncunun reaksiyon süresini doğrudan etkiler. Yüksek FPS, daha hızlı input (fare, klavye) yanıtlaması sağlar. Bu da Metin2 gibi refleks isteyen savaş sistemlerinde avantaj sağlar.
Sonuç
Metin2 özel sunucularında FPS değerlerini düzenlemek, oyun deneyimini artırmak için önemli bir adımdır. C++ ve Python tabanlı sistemlerle birlikte çalışarak, hem client hem de server tarafında bu değerler optimize edilebilir. Ancak dikkatli olunması gereken konu, bu değişikliklerin donanım uyumu ve performans üzerindeki etkisidir.
C++ / Python - Changing FPS Value
In Metin2 private servers, performance optimization often involves adjusting FPS (Frames Per Second) settings. The gaming experience, especially in PVP systems, is directly related to high FPS values. In this article, we will discuss how to change FPS values through C++ and Python-based systems in Metin2 private servers. This process may require modifications on both client and server sides.
What Is FPS and Why Is It Important?
FPS, or Frames Per Second, refers to the number of frames displayed on screen per second during gameplay. Higher FPS results in a smoother and more responsive gaming experience. Particularly in fast-paced combat games like Metin2, low FPS can cause delays and performance losses. Therefore, developers often seek to optimize FPS values.
FPS Settings in C++
On the Metin2 client side, FPS values are usually controlled via C++ code. Files located in the 'game' or 'system' folders of the client src, such as 'frame.cpp' or 'wndmgr.cpp', should be examined for FPS-related definitions. For example, a constant maximum FPS value might appear as follows:
MAX_FPS = 60;
By increasing this value (e.g., to 120 or 144), you can allow the game to render more frames per second. However, this action can also consume hardware resources significantly. Therefore, it must be supported by testing.
FPS Control in Python
In the Python side, UI systems and certain in-game controls are generally handled with this language. In Metin2 private servers, Python files like 'uiscript', 'root', and 'locale' control the behavior of the in-game interface. However, FPS is not directly controlled via Python but rather through systems that integrate with C++.
However, in some cases, in-game FPS indicators or settings menus may be written in Python. In such cases, FPS values received from users via a settings menu can be transferred to the C++ side. An API connection between Python and C++ would need to be established for this purpose.
Warning: Increasing FPS May Cause Performance Issues
Increasing FPS values may actually degrade game performance if your hardware cannot support them. Especially on older-generation hardware, high FPS settings can create significant load on the graphics card and CPU. Therefore, FPS values should be adjusted dynamically according to user hardware specifications.
The Impact of FPS Adjustments on Metin2 PVP Systems
In PVP systems, particularly during tournaments and critical battle moments, FPS value directly affects a player's reaction time. High FPS allows faster input response (mouse, keyboard). This provides an advantage in reflex-demanding combat systems like Metin2.
Conclusion
Adjusting FPS values in Metin2 private servers is an important step in enhancing the gaming experience. With C++ and Python-based systems working together, these values can be optimized on both client and server sides. However, care must be taken regarding the impact of these changes on hardware compatibility and overall performance.
