Hi,
I will share with you the solution of a general problem that occurs in infrastructures such as MartySama that use an account recording system over REGISTRY.
When you save your account, the data is saved in the Windows Registry, as shown in the example below.
Everything is great, the system is exactly what we wanted. Account information is no longer saved in files in the client.
However, there is a problem. Players have this problem. If you save your character information using Turkish characters, the client does not open and gives an error. It states that you have a problem with characters used on a system that supports ASCII encoding.
Check This ;
LoginWindow.__LoadScript.BindObject - <type 'exceptions.UnicodeEncodeError'>:'ascii' codec can't encode character u'\xe7' in position 8: ordinal not in range(128)
To resolve this, follow the steps below.
Root/Intrologin.py find in "def SAB_Click_Save(self, slot):"
if len(id) == 0:
self.PopupNotifyMessage(localeInfo.LOGIN_INPUT_ID, self.SetIDEditLineFocus)
return
Add this just above the code
if any(ord(char) > 127 for char in id + pwd):
self.PopupNotifyMessage(localeInfo.TURKISH_WORDS)
return
It will be enough to add the following message anywhere in locale_game.txt
TURKISH_WORDS Please do not use Turkish characters when registering your account!
It's done!
A few things I want to point out.
1. I am not a perfect developer, I have Python knowledge and this is how I found a solution. It's short and it works.
2. If you have a better solution suggestion, please specify. Instead of making fun of me, I ask you to respect the way I try to be useful to the community.
3. I had another account on Metin2.dev but I forgot the information so I created a new account. Moderators please understand me ^^
Kind Regards.