Öncelikle Selamun Aleyküm. Forumda ilk defa kendi yazdığım bir sistemi paylaşıyorum. O yüzden kodda hatalar varsa lütfen bildirin. TextTailin Aşağıda kaldığını fark ettim ona güncelleme getirmeyi düşünüyorum. Ek olarak Videodaki oyun seçenekleri halini değil Official systemoptiondialog halini verdim. Kullanımı aynıdır. Ek olarak demek istiyorum ki forum üzerindeki
VirusTotal :
İndirme Linki :
Güncelleme:
Metin2 Lobby'de Dinamik Metin Boyutu Sistemi
Dinamik metin boyutu sistemi, Metin2 özel sunucularında kullanıcı arayüzü deneyimini artırmak için geliştirilen önemli bir özelliktir.
Bu sistem sayesinde oyuncuların ekran çözünürlüğüne veya tercihlerine göre metinlerin otomatik olarak yeniden boyutlandırılması sağlanabilir. Özellikle farklı çözünürlüklerde oynayan oyuncular için arayüz uyumu büyük önem taşır. Bu yazıda, Metin2 özel sunucularında nasıl dinamik metin boyutu sistemi geliştirileceği ve uygulanacağı detaylıca ele alınacaktır.
Metin2 Arayüz Yapısı ve Metin Yönetimi
Metin2 oyununda arayüz yönetimi genellikle Python tabanlı UI Script (uiscript) dosyaları ile sağlanır. Bu dosyalar, butonlar, label'lar, progress bar'lar gibi arayüz öğelerini tanımlar. Metinler genellikle 'TextLine' veya 'SizedTextLine' gibi sınıflarla tanımlanır. Bu yapıda metinlerin sabit font boyutları kullanılır. Ancak dinamik bir sistem kurulması durumunda, bu font boyutları ekran çözünürlüğüne göre otomatik ayarlanabilir.
Python GUI ile Dinamik Font Ayarı
Python GUI modüllerini kullanarak, çözünürlüğe göre metin boyutlarını değiştirebiliriz. Örneğin, 1920x1080 çözünürlüğünde 14 punto olan bir metin, 1366x768 çözünürlüğünde 12 puntoya düşürülebilir. Bu işlem için çözünürlük algılayan bir fonksiyon yazmak gerekir. Bu fonksiyon, sistem başlatıldığında çalışarak mevcut çözünürlüğe göre metin boyutlarını belirler.
C++ Kaynak Kod Düzeyinde Font Ayarı
Metin2 oyununun çekirdek seviyesinde değişiklik yapmak isteyen geliştiriciler için C++ kaynak kodlar üzerinde font yönetimi yapılabilir. Özellikle client_src kısmında bulunan UI kütüphaneleri üzerinde metin boyutlandırma algoritmaları yazılabilir. Bu algoritmalar, çözünürlük değişikliklerine göre font büyüklüğünü oranlayarak yeniden hesaplar.
Py Root ve Uiscript Entegrasyonu
Py Root klasöründe bulunan Python dosyaları ile uiscript dosyaları arasında bağlantı kurularak dinamik metin sistemi entegre edilebilir. Örneğin, bir fonksiyon yardımıyla 'SetSize' metodu ile metin boyutu çözünürlüğe göre ayarlanabilir. Bu sayede hem kullanıcı dostu hem de esnek bir arayüz oluşturulabilir.
Martysama ve Diğer Geliştirici Kaynakları
Metin2 geliştirme sürecinde Martysama gibi kaynaklar büyük destek sağlar. Bu tür kaynaklarda bulunan örnek sistemler üzerinden dinamik font ayarlamaları yapılabilecek modüller geliştirilebilir. Ayrıca, topluluk forumlarında yer alan C++ script ve Python GUI örnekleri incelenerek bu sistemler daha da optimize edilebilir.
Sonuç
Dinamik metin boyutu sistemi, Metin2 özel sunucularında kullanıcı deneyimini ciddi anlamda artırabilir. Hem Python GUI hem de C++ seviyesinde geliştirilebilecek bu sistemler, çözünürlükten bağımsız olarak kullanıcılara daha uyumlu bir arayüz sunar. Metin2 geliştiricileri için bu tür sistemler, sunucu kalitesini yükseltmenin etkili yollarından biridir.
Dynamic Text Size System on Metin2 Lobby
The dynamic text size system is an important feature developed to enhance the user interface experience in Metin2 private servers.
Thanks to this system, texts can be automatically resized based on the player's screen resolution or preferences. Interface compatibility is particularly crucial for players gaming at different resolutions. In this article, we will discuss in detail how to develop and implement a dynamic text size system in Metin2 private servers.
Metin2 Interface Structure and Text Management
In Metin2, interface management is typically handled via Python-based UI Script (uiscript) files. These files define interface elements such as buttons, labels, and progress bars. Texts are usually defined using classes like 'TextLine' or 'SizedTextLine'. In this structure, fixed font sizes are used for texts. However, with a dynamic system, these font sizes can be adjusted automatically according to the screen resolution.
Dynamic Font Adjustments with Python GUI
Using Python GUI modules, you can adjust text sizes based on resolution. For example, a 14-point text in 1920x1080 resolution can be reduced to 12 points in 1366x768 resolution. To achieve this, a function that detects the resolution must be written. This function runs upon system startup and determines the appropriate text sizes based on the current resolution.
Font Adjustments at C++ Source Code Level
Developers wishing to make changes at the core level of the Metin2 game can manage fonts within the C++ source code. Specifically, font scaling algorithms can be written within the UI libraries found in the client_src section. These algorithms calculate and rescale font sizes proportionally based on resolution changes.
Py Root and Uiscript Integration
Dynamic text systems can be integrated by connecting Python files located in the Py Root folder with uiscript files. For instance, with the help of a function, the 'SetSize' method can adjust text sizes according to resolution. This allows for both user-friendly and flexible interfaces.
Martysama and Other Developer Resources
Resources like Martysama provide significant support during the Metin2 development process. Modules for dynamic font adjustments can be developed based on examples found in such resources. Additionally, examining C++ scripts and Python GUI examples available in community forums can further optimize these systems.
Conclusion
A dynamic text size system can significantly improve user experience in Metin2 private servers. These systems, which can be developed both at the Python GUI and C++ levels, offer users a more compatible interface regardless of resolution. For Metin2 developers, such systems are effective ways to enhance server quality.
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
konudan ilham alarak yazdım sistemi bu yüzden konu sahibi arkadaşa da teşekkür ediyorum.
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
VirusTotal :
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
İndirme Linki :
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
Güncelleme:
Kod:
#ARA pos = self.ctrlstonescale.GetSliderPos() # DEĞİŞTİR pos = self.ctrlStoneScale.GetSliderPos()
Metin2 Lobby'de Dinamik Metin Boyutu Sistemi
Dinamik metin boyutu sistemi, Metin2 özel sunucularında kullanıcı arayüzü deneyimini artırmak için geliştirilen önemli bir özelliktir.
Bu sistem sayesinde oyuncuların ekran çözünürlüğüne veya tercihlerine göre metinlerin otomatik olarak yeniden boyutlandırılması sağlanabilir. Özellikle farklı çözünürlüklerde oynayan oyuncular için arayüz uyumu büyük önem taşır. Bu yazıda, Metin2 özel sunucularında nasıl dinamik metin boyutu sistemi geliştirileceği ve uygulanacağı detaylıca ele alınacaktır.
Metin2 Arayüz Yapısı ve Metin Yönetimi
Metin2 oyununda arayüz yönetimi genellikle Python tabanlı UI Script (uiscript) dosyaları ile sağlanır. Bu dosyalar, butonlar, label'lar, progress bar'lar gibi arayüz öğelerini tanımlar. Metinler genellikle 'TextLine' veya 'SizedTextLine' gibi sınıflarla tanımlanır. Bu yapıda metinlerin sabit font boyutları kullanılır. Ancak dinamik bir sistem kurulması durumunda, bu font boyutları ekran çözünürlüğüne göre otomatik ayarlanabilir.
Python GUI ile Dinamik Font Ayarı
Python GUI modüllerini kullanarak, çözünürlüğe göre metin boyutlarını değiştirebiliriz. Örneğin, 1920x1080 çözünürlüğünde 14 punto olan bir metin, 1366x768 çözünürlüğünde 12 puntoya düşürülebilir. Bu işlem için çözünürlük algılayan bir fonksiyon yazmak gerekir. Bu fonksiyon, sistem başlatıldığında çalışarak mevcut çözünürlüğe göre metin boyutlarını belirler.
C++ Kaynak Kod Düzeyinde Font Ayarı
Metin2 oyununun çekirdek seviyesinde değişiklik yapmak isteyen geliştiriciler için C++ kaynak kodlar üzerinde font yönetimi yapılabilir. Özellikle client_src kısmında bulunan UI kütüphaneleri üzerinde metin boyutlandırma algoritmaları yazılabilir. Bu algoritmalar, çözünürlük değişikliklerine göre font büyüklüğünü oranlayarak yeniden hesaplar.
Py Root ve Uiscript Entegrasyonu
Py Root klasöründe bulunan Python dosyaları ile uiscript dosyaları arasında bağlantı kurularak dinamik metin sistemi entegre edilebilir. Örneğin, bir fonksiyon yardımıyla 'SetSize' metodu ile metin boyutu çözünürlüğe göre ayarlanabilir. Bu sayede hem kullanıcı dostu hem de esnek bir arayüz oluşturulabilir.
Martysama ve Diğer Geliştirici Kaynakları
Metin2 geliştirme sürecinde Martysama gibi kaynaklar büyük destek sağlar. Bu tür kaynaklarda bulunan örnek sistemler üzerinden dinamik font ayarlamaları yapılabilecek modüller geliştirilebilir. Ayrıca, topluluk forumlarında yer alan C++ script ve Python GUI örnekleri incelenerek bu sistemler daha da optimize edilebilir.
Sonuç
Dinamik metin boyutu sistemi, Metin2 özel sunucularında kullanıcı deneyimini ciddi anlamda artırabilir. Hem Python GUI hem de C++ seviyesinde geliştirilebilecek bu sistemler, çözünürlükten bağımsız olarak kullanıcılara daha uyumlu bir arayüz sunar. Metin2 geliştiricileri için bu tür sistemler, sunucu kalitesini yükseltmenin etkili yollarından biridir.
Dynamic Text Size System on Metin2 Lobby
The dynamic text size system is an important feature developed to enhance the user interface experience in Metin2 private servers.
Thanks to this system, texts can be automatically resized based on the player's screen resolution or preferences. Interface compatibility is particularly crucial for players gaming at different resolutions. In this article, we will discuss in detail how to develop and implement a dynamic text size system in Metin2 private servers.
Metin2 Interface Structure and Text Management
In Metin2, interface management is typically handled via Python-based UI Script (uiscript) files. These files define interface elements such as buttons, labels, and progress bars. Texts are usually defined using classes like 'TextLine' or 'SizedTextLine'. In this structure, fixed font sizes are used for texts. However, with a dynamic system, these font sizes can be adjusted automatically according to the screen resolution.
Dynamic Font Adjustments with Python GUI
Using Python GUI modules, you can adjust text sizes based on resolution. For example, a 14-point text in 1920x1080 resolution can be reduced to 12 points in 1366x768 resolution. To achieve this, a function that detects the resolution must be written. This function runs upon system startup and determines the appropriate text sizes based on the current resolution.
Font Adjustments at C++ Source Code Level
Developers wishing to make changes at the core level of the Metin2 game can manage fonts within the C++ source code. Specifically, font scaling algorithms can be written within the UI libraries found in the client_src section. These algorithms calculate and rescale font sizes proportionally based on resolution changes.
Py Root and Uiscript Integration
Dynamic text systems can be integrated by connecting Python files located in the Py Root folder with uiscript files. For instance, with the help of a function, the 'SetSize' method can adjust text sizes according to resolution. This allows for both user-friendly and flexible interfaces.
Martysama and Other Developer Resources
Resources like Martysama provide significant support during the Metin2 development process. Modules for dynamic font adjustments can be developed based on examples found in such resources. Additionally, examining C++ scripts and Python GUI examples available in community forums can further optimize these systems.
Conclusion
A dynamic text size system can significantly improve user experience in Metin2 private servers. These systems, which can be developed both at the Python GUI and C++ levels, offer users a more compatible interface regardless of resolution. For Metin2 developers, such systems are effective ways to enhance server quality.
