Root intrologin.py aratılır;
Kod:
self.loginExitButton = GetObject("LoginExitButton")
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
Kod:
self.VectorsIdKayit = GetObject("VectorsIdKayit") self.VectorsIdSil = GetObject("VectorsIdSil")
Kod:
self.pwdEditLine.SetTabEvent(ui.__mem_func__(self.idEditLine.SetFocus))
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
Kod:
self.VectorsIdKayit.SetEvent(ui.__mem_func__(self.__OnClickVectorsIdKayit)) self.VectorsIdSil.SetEvent(ui.__mem_func__(self.__OnClickVectorsIdSil))
Kod:
global SKIP_LOGIN_PHASE if SKIP_LOGIN_PHASE: if not self.loginInfo: self.connectBoard.Hide()
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
Kod:
import linecache login = linecache.getline("save.cfg", 1) password = linecache.getline("save.cfg", 2) self.idEditLine.SetText(login) self.pwdEditLine.SetText(password) id = self.idEditLine.GetText() id = id.replace('\n', '') self.idEditLine.SetText(id) def __OnClickVectorsIdKayit(self): id = self.idEditLine.GetText() sifre = self.pwdEditLine.GetText() kaydet = open("save.cfg", "w") kaydet.write (id +"\n") kaydet.write (sifre) kaydet.close() self.PopupNotifyMessage("HESAP KAYIT EDILDI.") def __OnClickVectorsIdSil(self): sil = open("save.cfg", "w") sil.write ("") sil.write ("") sil.close() self.PopupNotifyMessage("HESAP SILINDI.")
locale/xx/ui/loginwindow.py aratılır;
Kod:
"name" : "LoginExitButton",
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
Kod:
{ "name" : "VectorsIdKayit", "type" : "button", "x" : 210, "y" : 5, "default_image" : "locale/login/kaydet1.tga", "over_image" : "locale/login/kaydet2.tga", "down_image" : "locale/login/kaydet3.tga", "text" : "", }, { "name" : "VectorsIdSil", "type" : "button", "x" : 210, "y" : 35, "default_image" : "locale/login/sil1.tga", "over_image" : "locale/login/sil2.tga", "down_image" : "locale/login/sil3.tga", "text" : "", },
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.
Klasörde locale/xx/login klasörü var,
xx olan kısmını tr,de vs. hangisini kullanıyorsanız ona göre değiştirip locale packine atın.
Hazır intrologin.py (locale)
Ziyaretçiler için gizlenmiş link,görmek için üye olmalısınız!
Giriş yap veya üye ol.
Login Ekranına Hesap Kaydet & Sil Butonu Ekleme
Metin2 özel sunucularında kullanıcı deneyimini artırmak adına login ekranına bazı özellikler eklemek oldukça yaygın bir yöntemdir. Bu özelliklerden birisi de 'Hesap Kaydet' ve 'Hesap Sil' butonlarıdır. Bu makalede, Metin2 özel sunucu geliştirme sürecinde client tarafında nasıl bir 'Hesap Kaydet' ve 'Hesap Sil' butonu ekleneceğini detaylıca ele alacağız.
Giriş
Metin2 özel sunucuları, oyuncuların kendi aralarında rekabet içeren PVP sistemleriyle tanınır. Bu sistemlerde kullanıcıların hesaplarını kolayca yönetebilmesi büyük önem taşır. Oyuna giriş yaparken sürekli olarak kullanıcı adı ve şifre girmek yerine, daha önce oturum açılmış olan hesaplar doğrudan listelenerek kolay erişim sağlanabilir. Bu sayede kullanıcı dostu bir arayüz oluşturulur.
Hesap Kaydet Butonunun Amacı
'Hesap Kaydet' butonu, oyuncuların daha önce girdikleri kullanıcı adı ve şifre bilgilerini local olarak saklamasını sağlar. Böylece bir sonraki girişte bu bilgiler otomatik olarak doldurulur. Bu işlem genellikle Windows registry veya .txt dosyası gibi yerel depolama yöntemleriyle gerçekleştirilir.
Güvenlik Uyarısı
Bu yöntemin güvenlik açısından riskli olabileceğini unutmamak gerekir. Şifreler şifrelenmeden saklanıyorsa, saldırganlar tarafından kolayca erişilebilir. Bu yüzden şifrelerin hashlenerek veya şifrelenerek saklanması önerilir. Özellikle Metin2 özel sunucularında güvenlik ön planda tutulmalıdır.
Python GUI Kullanımı
Metin2 client tarafında GUI düzenlemeleri genellikle Python dili ile yazılmış UIScript dosyaları üzerinden yapılır. Bu dosyalar, oyunun arayüzünü kontrol eder. Hesap kaydetme fonksiyonunu eklemek için UIScript üzerinde yeni butonlar tanımlanmalı ve bu butonlara Python kök dizininde yer alan py dosyaları üzerinden işlevsellik kazandırılmalıdır.
Hesap Silme Fonksiyonu
'Hesap Sil' butonu, daha önce kaydedilmiş kullanıcı bilgilerini silmek için kullanılır. Bu buton, kullanıcıya kayıtlı hesapları görüntüleme ve silme imkanı sunar. Bu sayede kullanıcı, artık kullanmadığı hesapları güvenli bir şekilde kaldırabilir.
Uygulama Adımları
1. UIScript dosyasında login ekranına iki yeni buton eklenir: 'Hesap Kaydet' ve 'Hesap Sil'.
2. Py dosyasında bu butonlara tıklanınca çalışacak fonksiyonlar yazılır.
3. Gerekirse kullanıcı adı ve şifre verileri bir dosyada saklanır veya registry'ye yazılır.
4. Gerekli güvenlik önlemleri alınarak veriler şifrelenir.
Sonuç
Login ekranına 'Hesap Kaydet' ve 'Hesap Sil' butonlarının eklenmesi, kullanıcı dostu bir deneyim sunar. Ancak bu işlem sırasında güvenlik önlemlerinin alınması büyük önem taşır. Metin2 özel sunucularında kullanıcı deneyimi artırmak için bu tür küçük ama etkili geliştirmeler yapılabilir.
Adding Save & Delete Account Buttons to Login Screen
In order to enhance the user experience on Metin2 private servers, adding certain features to the login screen has become a common practice. One of these features includes 'Save Account' and 'Delete Account' buttons. In this article, we will detail how to add 'Save Account' and 'Delete Account' buttons to the login screen during the Metin2 private server development process on the client side.
Introduction
Metin2 private servers are known for their competitive PVP systems where players engage in battles. In such systems, it's crucial for users to easily manage their accounts. Instead of entering username and password each time, previously used accounts can be listed directly, enabling quick access. This way, a user-friendly interface is created.
Purpose of the Save Account Button
The 'Save Account' button allows players to store their previously entered username and password locally. On subsequent logins, these details are automatically filled in. This process is usually done using local storage methods like Windows registry or .txt files.
Security Warning
It must be remembered that this method can pose security risks. If passwords are stored without encryption, they can be easily accessed by attackers. Therefore, it's recommended to store passwords encrypted or hashed. Especially in Metin2 private servers, security should always be prioritized.
Using Python GUI
GUI modifications in the Metin2 client are typically handled through UIScript files written in Python. These files control the game’s interface. To add the save account function, new buttons must be defined in the UIScript file, and functionality should be added via Python root files when clicked.
Account Deletion Function
The 'Delete Account' button allows the removal of previously saved user credentials. This button provides users with the ability to view and delete saved accounts. This way, users can securely remove accounts they no longer use.
Implementation Steps
1. Add two new buttons, 'Save Account' and 'Delete Account', to the login screen in the UIScript file.
2. Write functions in the Python file to handle the button clicks.
3. Store usernames and passwords in a file or in the registry if necessary.
4. Apply necessary security measures by encrypting the data.
Conclusion
Adding 'Save Account' and 'Delete Account' buttons to the login screen creates a user-friendly experience. However, it's important to take security measures seriously during this process. Small but effective improvements like these can significantly enhance the user experience in Metin2 private servers.
