Selamlar hoşuma giden ve hoşunuza gideceğini düşündüğüm yeni bir özelik
çoğu kişinin ekleyeceğini düşünüyorum iyi kullanımlar
Ne işe Yarar ?
Taskbar ve MiniMapı gizlemesi ve üstüne gelince tekrardan geri gelmesi
Açma/Kapatma ile istenildiği zaman açılıp kapanabilir.
geliştirmeye açıktır aynı mantık ile diğer alanlara uyarlanabilir.
Tanıtım Videosu
Kanıt
çoğu kişinin ekleyeceğini düşünüyorum iyi kullanımlar
Ne işe Yarar ?
Taskbar ve MiniMapı gizlemesi ve üstüne gelince tekrardan geri gelmesi
Açma/Kapatma ile istenildiği zaman açılıp kapanabilir.
geliştirmeye açıktır aynı mantık ile diğer alanlara uyarlanabilir.
Tanıtım Videosu
Kanıt
<blockquote data-attributes="" data-quote="" data-source="" class="bbCodeBlock bbCodeBlock--expandable bbCodeBlock--quote js-expandWatch is-expandable">
Kod:
Ara: void CPythonSystem::SetDefaultConfig() //Ekle: m_Config.bShowWindow = true; Ara: bool CPythonSystem::IsViewChat() //Ekle: bool CPythonSystem::IsEnableShowWindow() { return m_Config.bShowWindow; } void CPythonSystem::SetShowWindow(int iFlag) { m_Config.bShowWindow = iFlag == 1 ? true : false; } Ara: else if (!stricmp(command, "SHOW_SALESTEXT")) m_Config.bShowSalesText = atoi(value) == 1 ? true : false; //Ekle: else if (!stricmp(command, "SHOW_WINDOW")) m_Config.bShowWindow = atoi(value) == 1 ? true : false; Ara: if (m_Config.bShowSalesText == 0) fprintf(fp, "SHOW_SALESTEXT %d\n", m_Config.bShowSalesText); //Ekle: fprintf(fp, "SHOW_WINDOW %d\n", m_Config.bShowWindow);
Kod:
Ara: bool bShowSalesText; //Ekle: bool bShowWindow; Ara: void SetShowSalesTextFlag(int iFlag); //Ekle: bool IsEnableShowWindow(); void SetShowWindow(int iFlag);
Kod:
Ara: PyObject * systemSetShowSalesTextFlag(PyObject * poSelf, PyObject * poArgs) //Ekle: PyObject* systemSetShowWindow(PyObject* poSelf, PyObject* poArgs) { int iFlag; if (!PyTuple_GetInteger(poArgs, 0, &iFlag)) return Py_BuildException(); CPythonSystem::Instance().SetShowWindow(iFlag); return Py_BuildNone(); } PyObject* systemIsEnableShowWindow(PyObject* poSelf, PyObject* poArgs) { return Py_BuildValue("i", CPythonSystem::Instance().IsEnableShowWindow()); } Ara: { "IsShowSalesText", systemIsShowSalesText, METH_VARARGS }, //Ekle: { "SetShowWindow", systemSetShowWindow, METH_VARARGS }, { "IsEnableShowWindow", systemIsEnableShowWindow, METH_VARARGS },
Kod:
if app.__BL_WINDOW_AUTO_HIDE__: AUTO_HIDE_OPTION = False
Kod:
constInfo.AUTO_HIDE_OPTION == False: -> not systemSetting.IsEnableShowWindow():
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
Metin2 Oyununda Harita Tabanlı FPS Etki Sistemi
Metin2 özel sunucularında performans ve görsellik dengesi kurmak, özellikle yüksek trafikli PvP bölgelerinde kritik öneme sahiptir. Bu bağlamda, harita tabanlı FPS (Frames Per Second) etkisi kullanımı, oyuncu deneyimini optimize etmek için önemli bir teknik olarak karşımıza çıkar. Bu yazıda, C++ tabanlı Metin2 sunucu kaynak kodlarında harita bazında FPS etkisinin nasıl düzeltileceği ve optimize edileceği detaylı şekilde ele alınacaktır.
Harita Bazlı FPS Nedir?
FPS (Frame Per Second), bir saniyede ekranda gösterilen kare sayısıdır. Yüksek FPS, daha akıcı ve sorunsuz bir oyun deneyimi sunar. Ancak, bazı haritalarda çok fazla nesne, efekt veya oyuncu olduğu zaman FPS düşebilir. Harita bazlı FPS etkisi, belirli haritalarda farklı FPS limitleri uygulamak anlamına gelir. Örneğin, PvP alanlarında daha yüksek FPS tercih edilirken, kasaba gibi yoğun olmayan alanlarda düşük bir FPS yeterli olabilir.
C++ Kaynak Kodlarında FPS Ayarları
Metin2 özel sunucu geliştirme sürecinde, FPS ayarları genellikle istemci tarafında yapılır. Ancak bazı durumlarda sunucu taraflı kontrol de gerekebilir. C++ ile yazılmış game server src dosyalarında, belirli haritalarda FPS etkilerini doğrudan ayarlamak mümkün değildir; ancak istemci tarafında yapılan ayarlamalarla birlikte, harita bazlı davranışlar tanımlanabilir. Bu tür ayarlar genellikle client/src/game veya client/src/utils dizinlerinde yer alır.
Harita Bazlı FPS Ayarının Uygulanması
Harita bazlı FPS ayarını uygulamak için, önce harita isimlerine göre farklı ayarlar tanımlanmalıdır. Bu işlem genellikle client/src/game/MapManager.cpp gibi dosyalarda yapılır. Burada, belirli harita adlarına göre FPS sınırlaması uygulanabilir. Örneğin, 'Metin2Server' isimli haritada 60 FPS, 'Metin2PvPArena' isimli haritada ise 120 FPS olacak şekilde ayarlanabilir. Bu ayarlar, oyun döngüsü sırasında sürekli kontrol edilmeli ve gerekli değişiklikler yapılmalıdır.
Yanlış FPS Ayarlarının Etkileri
Yanlış yapılandırılmış FPS ayarları, oyuncuların donmalarına, takılmalarına veya performans kayıplarına yol açabilir. Özellikle PvP sistemlerinde, bu tür sorunlar ciddi avantaj/dezavantaj yaratabilir. Bu nedenle, FPS ayarlarının test edilmesi ve doğru şekilde uygulanması büyük önem taşır. Metin2 lobby sistemlerinde, bu tür ayarlar doğru şekilde yapılmadığında, kullanıcıların oyun dışına çıkmasına neden olabilir.
Optimizasyon Önerileri
FPS ayarlarını optimize etmek için, öncelikle her haritanın içeriğine göre farklı stratejiler uygulanmalıdır. Oyuncu yoğunluğu, efekt sayısı ve harita büyüklüğü gibi faktörler göz önünde bulundurulmalıdır. Ayrıca, FPS ayarları sadece oyun performansını değil, aynı zamanda sunucu yükünü de etkiler. Bu nedenle, doğru dengeyi kurmak için sunucu kaynak kullanımı da analiz edilmelidir. Sunucu logları ve istemci geribildirimleri üzerinden bu ayarlar sürekli revize edilmelidir.
Sonuç
Harita bazlı FPS etkileri, Metin2 özel sunucularında kullanıcı deneyimini artırmak için önemli bir özelliktir. C++ tabanlı sistemlerde bu ayarları doğru şekilde yapabilmek için hem sunucu hem de istemci tarafında gerekli düzenlemeler yapılmalıdır. Bu sayede, oyuncular her haritada optimum performansı alabilir ve PvP sistemlerinde adil bir oyun ortamı sağlanabilir.
Map-Based FPS Effect System in Metin2
In Metin2 private servers, balancing performance and visual quality is critical, especially in high-traffic PvP areas. In this context, map-based FPS (Frames Per Second) effect usage becomes an important technique for optimizing player experience. This article will detail how to fix and optimize map-based FPS effects in C++ based Metin2 server source codes.
What is Map-Based FPS?
FPS (Frame Per Second) refers to the number of frames displayed per second. Higher FPS provides a smoother and more fluid gaming experience. However, in some maps where there are too many objects, effects, or players, FPS can drop. Map-based FPS effect means applying different FPS limits on specific maps. For example, higher FPS may be preferred in PvP areas while lower FPS might be sufficient in less crowded zones like towns.
FPS Settings in C++ Source Codes
During the process of developing Metin2 private servers, FPS settings are usually handled on the client side. However, in certain cases, server-side control may also be required. In C++ based game server source files, directly setting FPS effects on specific maps is not possible; however, with client-side adjustments, map-based behaviors can be defined. These types of settings are typically located in client/src/game or client/src/utils directories.
Applying Map-Based FPS Settings
To apply map-based FPS settings, different configurations must first be defined according to map names. This process is usually done in files like client/src/game/MapManager.cpp. Here, FPS limitations can be applied according to specific map names. For instance, 60 FPS can be set for the 'Metin2Server' map, while 120 FPS can be set for the 'Metin2PvPArena' map. These settings should be continuously checked during the game loop and necessary changes made accordingly.
Effects of Incorrect FPS Settings
Incorrectly configured FPS settings can cause players to freeze, stutter, or suffer performance losses. Especially in PvP systems, such issues can create significant advantages/disadvantages. Therefore, testing and correctly implementing FPS settings is of great importance. In Metin2 lobby systems, if these settings are not properly configured, it may lead users to exit the game.
Optimization Suggestions
To optimize FPS settings, different strategies should be applied depending on the content of each map. Factors such as player density, number of effects, and map size should be considered. Additionally, FPS settings affect not only game performance but also server load. Therefore, server resource usage should also be analyzed to strike the correct balance. These settings should be continuously revised through server logs and client feedback.
Conclusion
Map-based FPS effects are an important feature for enhancing user experience in Metin2 private servers. To implement these settings correctly in C++ based systems, necessary adjustments must be made on both server and client sides. This way, players can achieve optimal performance in every map and ensure fair gameplay environments in PvP systems.
