<blockquote data-attributes="" data-quote="" data-source="" class="bbCodeBlock bbCodeBlock--expandable bbCodeBlock--quote js-expandWatch">
Srcs/Client/UserInterface/MovieMan.cpp
<blockquote data-attributes="" data-quote="" data-source="" class="bbCodeBlock bbCodeBlock--expandable bbCodeBlock--quote js-expandWatch">
Nasıl Yapılır: Giriş Ekranındaki Logoyu Atla
Metin2 özel sunucularında oyun başlatıldığında karşımıza çıkan logo animasyonunu atlamak, kullanıcı deneyimini hızlandırmak isteyen sunucu sahipleri için önemli bir özelliktir. Bu rehberde Martysama veya başka bir C++ source yapısında çalışan geliştiriciler için, giriş logosunu nasıl atlayacağınızı adım adım anlatacağız.
Logonun Atlanması Neden Gerekli?
Metin2 oyunu başlatıldığında varsayılan olarak bir logo animasyonu oynatılır. Bu logo, sunucuya özel değilse ve kullanıcılar için fazladan bekleme süresi oluşturuyorsa, atlanması daha iyi bir kullanıcı deneyimi sağlar. Özellikle PvP sistem odaklı sunucularda, oyuncuların hızlıca oyuna girmesi önemlidir.
Geliştirme Ortamı
Bu işlemi yapabilmek için client-side üzerinde değişiklik yapmanız gerekir. Genellikle uiscript, py root ve Python GUI dosyaları üzerinde çalışılır. Eğer C++ source ile oynuyorsanız, bu işlem game core içinde de yapılabileceği gibi, client src tarafında da yapılabilir.
Adım 1: Logo Tanımlamasını Bulun
root klasöründe bulunan introData.py veya benzeri bir dosya üzerinden logonun tanımlandığı kısma ulaşmanız gerekir. Burada logonun hangi pencere sınıfı tarafından yönetildiği belirlenir. Genellikle IntroLogoWindow gibi bir isimdir.
Adım 2: Giriş Fonksiyonunu Düzenleyin
IntroLogoWindow sınıfının başlatma fonksiyonu (__init__) içinde, logonun gösterilmesi ve zamanlaması yapılır. Burada doğrudan Skip komutu verilerek logo atlatabilir veya zamanlayıcı kısaltılabilir.
Python GUI Örneği:
def OnUpdate(self):
self.__SkipIntro() # Zamanlayıcıyı geçersiz kılar
Adım 3: Otomatik Geçiş Ayarı
Sunucunuzda logo geçişini tamamen kaldırmak istiyorsanız, IntroLogoWindow sınıfının başlatma kısmında doğrudan self.Hide() ve self.__NextWindow() gibi komutlar ekleyerek logo ekranını atlayabilirsiniz.
C++ Kaynak Kod Tarafında Değişiklik
Eğer C++ source tarafında değişiklik yapmayı tercih ediyorsanız, game server programming dosyalarında logo kontrolü yapan fonksiyonları bulup, doğrudan bu ekranı geçmek için bir kontrol noktası eklemelisiniz. Bu işlem, auth ve game core arasında koordinasyon gerektirebilir.
Not: Metin2 compile işlemi sırasında yapılan değişikliklerin doğru şekilde uygulanması için, tüm pack dosyalarının yeniden derlenmesi gerekebilir. Ayrıca db core ile uyumlu olacak şekilde ayarlamalar yapılmalıdır.
Sonuç
Metin2 özel sunucunuzda logo ekranını atlamak, kullanıcı dostu bir deneyim sunmak açısından oldukça faydalıdır. Py GUI veya C++ source üzerinde yapılacak küçük değişikliklerle, kullanıcılarınızın doğrudan karakter seçim ekranına yönlendirilmesi sağlanabilir. Bu tür geliştirmeler, Metin2 development sürecinde dikkat çeken detaylardır.
How To: Skip the Intro Logo
In Metin2 private servers, skipping the logo animation that appears when the game starts is important for server owners who want to speed up the user experience. In this guide, we will explain step-by-step how to skip the startup logo for developers working with Martysama or other C++ source structures.
Why Skipping the Logo is Necessary?
When Metin2 starts, a default logo animation plays. If this logo is not specific to your server and adds extra waiting time for players, skipping it provides a better user experience. Especially on PvP system-focused servers, getting players into the game quickly is crucial.
Development Environment
To perform this operation, you need to make changes on the client-side. Usually, work is done on uiscript, py root, and Python GUI files. If you are working with C++ source, this can be done within game core or on the client src side.
Step 1: Find the Logo Definition
You need to access the part where the logo is defined from a file such as introData.py located in the root folder. Here, the window class managing the logo is identified, usually named something like IntroLogoWindow.
Step 2: Edit the Startup Function
In the initialization function (__init__) of the IntroLogoWindow class, the display and timing of the logo occur. By directly issuing a Skip command here, the logo can be skipped or the timer shortened.
Python GUI Example:
def OnUpdate(self):
self.__SkipIntro() # Invalidates the timer
Step 3: Auto-Skip Setting
If you want to completely remove the logo transition on your server, you can add commands like self.Hide() and self.__NextWindow() in the initialization part of the IntroLogoWindow class to skip the logo screen entirely.
Making Changes on the C++ Source Side
If you prefer making changes on the C++ source side, find the functions controlling the logo in game server programming files and add a control point to skip this screen directly. This may require coordination between auth and game core.
Note: During the Metin2 compile process, all pack files may need to be recompiled to ensure changes are applied correctly. Also, adjustments must be made to maintain compatibility with db core.
Conclusion
Skipping the logo screen on your Metin2 private server is highly beneficial for providing a user-friendly experience. With small changes made on Py GUI or C++ source, you can direct users straight to the character selection screen. Such improvements are notable details in the Metin2 development process.
Kod:
#define ENABLE_SKIP_MOVIE
Srcs/Client/UserInterface/MovieMan.cpp
Kod:
// 1.0) Search the function: PlayMovie(pcszName); // 1.1) Replace with: #ifdef ENABLE_SKIP_MOVIE PlayMovie(pcszName, true); #else PlayMovie(pcszName); #endif
<blockquote data-attributes="" data-quote="" data-source="" class="bbCodeBlock bbCodeBlock--expandable bbCodeBlock--quote js-expandWatch">
Kod:
// 2.0) Search the condition: if (bSkipAllowed && (KEY_DOWN(VK_LBUTTON) || KEY_DOWN(VK_ESCAPE) || KEY_DOWN(VK_SPACE))) { break; } // 2.1) Replace with: #ifdef ENABLE_SKIP_MOVIE if (bSkipAllowed) { bool is_pressed = false; for (BYTE i = 0; i < 256; ++i) { if ((GetAsyncKeyState(i) & 0x8000) != 0) { is_pressed = true; break; } } if (is_pressed) break; } #else if (bSkipAllowed && (KEY_DOWN(VK_LBUTTON) || KEY_DOWN(VK_ESCAPE) || KEY_DOWN(VK_SPACE))) break; #endif
Metin2 Lobby
Metin2 Özel Sunucu Geliştirme Rehberi
Nasıl Yapılır: Giriş Ekranındaki Logoyu Atla
Metin2 özel sunucularında oyun başlatıldığında karşımıza çıkan logo animasyonunu atlamak, kullanıcı deneyimini hızlandırmak isteyen sunucu sahipleri için önemli bir özelliktir. Bu rehberde Martysama veya başka bir C++ source yapısında çalışan geliştiriciler için, giriş logosunu nasıl atlayacağınızı adım adım anlatacağız.
Logonun Atlanması Neden Gerekli?
Metin2 oyunu başlatıldığında varsayılan olarak bir logo animasyonu oynatılır. Bu logo, sunucuya özel değilse ve kullanıcılar için fazladan bekleme süresi oluşturuyorsa, atlanması daha iyi bir kullanıcı deneyimi sağlar. Özellikle PvP sistem odaklı sunucularda, oyuncuların hızlıca oyuna girmesi önemlidir.
Geliştirme Ortamı
Bu işlemi yapabilmek için client-side üzerinde değişiklik yapmanız gerekir. Genellikle uiscript, py root ve Python GUI dosyaları üzerinde çalışılır. Eğer C++ source ile oynuyorsanız, bu işlem game core içinde de yapılabileceği gibi, client src tarafında da yapılabilir.
Adım 1: Logo Tanımlamasını Bulun
root klasöründe bulunan introData.py veya benzeri bir dosya üzerinden logonun tanımlandığı kısma ulaşmanız gerekir. Burada logonun hangi pencere sınıfı tarafından yönetildiği belirlenir. Genellikle IntroLogoWindow gibi bir isimdir.
Adım 2: Giriş Fonksiyonunu Düzenleyin
IntroLogoWindow sınıfının başlatma fonksiyonu (__init__) içinde, logonun gösterilmesi ve zamanlaması yapılır. Burada doğrudan Skip komutu verilerek logo atlatabilir veya zamanlayıcı kısaltılabilir.
Python GUI Örneği:
def OnUpdate(self):
self.__SkipIntro() # Zamanlayıcıyı geçersiz kılar
Adım 3: Otomatik Geçiş Ayarı
Sunucunuzda logo geçişini tamamen kaldırmak istiyorsanız, IntroLogoWindow sınıfının başlatma kısmında doğrudan self.Hide() ve self.__NextWindow() gibi komutlar ekleyerek logo ekranını atlayabilirsiniz.
C++ Kaynak Kod Tarafında Değişiklik
Eğer C++ source tarafında değişiklik yapmayı tercih ediyorsanız, game server programming dosyalarında logo kontrolü yapan fonksiyonları bulup, doğrudan bu ekranı geçmek için bir kontrol noktası eklemelisiniz. Bu işlem, auth ve game core arasında koordinasyon gerektirebilir.
Not: Metin2 compile işlemi sırasında yapılan değişikliklerin doğru şekilde uygulanması için, tüm pack dosyalarının yeniden derlenmesi gerekebilir. Ayrıca db core ile uyumlu olacak şekilde ayarlamalar yapılmalıdır.
Sonuç
Metin2 özel sunucunuzda logo ekranını atlamak, kullanıcı dostu bir deneyim sunmak açısından oldukça faydalıdır. Py GUI veya C++ source üzerinde yapılacak küçük değişikliklerle, kullanıcılarınızın doğrudan karakter seçim ekranına yönlendirilmesi sağlanabilir. Bu tür geliştirmeler, Metin2 development sürecinde dikkat çeken detaylardır.
Metin2 Lobby
Metin2 Private Server Development Guide
How To: Skip the Intro Logo
In Metin2 private servers, skipping the logo animation that appears when the game starts is important for server owners who want to speed up the user experience. In this guide, we will explain step-by-step how to skip the startup logo for developers working with Martysama or other C++ source structures.
Why Skipping the Logo is Necessary?
When Metin2 starts, a default logo animation plays. If this logo is not specific to your server and adds extra waiting time for players, skipping it provides a better user experience. Especially on PvP system-focused servers, getting players into the game quickly is crucial.
Development Environment
To perform this operation, you need to make changes on the client-side. Usually, work is done on uiscript, py root, and Python GUI files. If you are working with C++ source, this can be done within game core or on the client src side.
Step 1: Find the Logo Definition
You need to access the part where the logo is defined from a file such as introData.py located in the root folder. Here, the window class managing the logo is identified, usually named something like IntroLogoWindow.
Step 2: Edit the Startup Function
In the initialization function (__init__) of the IntroLogoWindow class, the display and timing of the logo occur. By directly issuing a Skip command here, the logo can be skipped or the timer shortened.
Python GUI Example:
def OnUpdate(self):
self.__SkipIntro() # Invalidates the timer
Step 3: Auto-Skip Setting
If you want to completely remove the logo transition on your server, you can add commands like self.Hide() and self.__NextWindow() in the initialization part of the IntroLogoWindow class to skip the logo screen entirely.
Making Changes on the C++ Source Side
If you prefer making changes on the C++ source side, find the functions controlling the logo in game server programming files and add a control point to skip this screen directly. This may require coordination between auth and game core.
Note: During the Metin2 compile process, all pack files may need to be recompiled to ensure changes are applied correctly. Also, adjustments must be made to maintain compatibility with db core.
Conclusion
Skipping the logo screen on your Metin2 private server is highly beneficial for providing a user-friendly experience. With small changes made on Py GUI or C++ source, you can direct users straight to the character selection screen. Such improvements are notable details in the Metin2 development process.
