[Help] cyrillics in names

Status
Not open for further replies.
Newbie Spellweaver
Joined
Mar 28, 2012
Messages
25
Reaction score
1
Hi. Can someone help me:
How to resolve Cyrillics in names?

update:
Getting "??????" in names against cyrillics.
How to change database codepage? Using mssql.
"alter database XXX collate Cyrillic_General_CI_AS" doesnt work

update2:
netsurf - [Help] cyrillics in names - RaGEZONE Forums


1. Creating character with cyrillic name.
2. Got this shitty "???????" in name against name used
3. Joining the game without any error
at the bottom: i changed sorting table for m_szName column from Latin1_General_BIN to Cyrillyc_General_BIN (when i edit name in Management studio it saves right and i see cyrillics in name ingame),
but i cant create character with cyrillics & it causes errors:

CQuery-LogFile_20120407.txt:
Code:
2012/04/07	00:21:40
query:CHARACTER_STR 'I1',@im_idPlayer='0000000',@iserverindex='01',@iaccount='netsurf77',@im_szName='АПРВОАР',@iplayerslot=0,@idwWorldID=1,@im_dwIndex=12,@im_vPos_x=6971.984375,@im_vPos_y=100.000000,@im_vPos_z=3336.884277,@im_szCharacterKey='(null)',@im_dwSkinSet=0,@im_dwHairMesh=0,@im_dwHairColor=-329126,@im_dwHeadMesh=0,@im_dwSex=1,@im_vScale_x=0.000000,@im_dwMotion=0,@im_fAngle=0.000000,@im_nHitPoint=0,@im_nManaPoint=0,@im_nFatiguePoint=0,@im_dwRideItemIdx=0,@im_dwGold=0,@im_nJob=0,@im_pActMover='(null)',@im_nStr=0,@im_nSta=0,@im_nDex=0,@im_nInt=0,@im_nLevel=0,@im_nExp1=0,@im_nExp2=0,@im_aJobSkill='(null)',@im_aLicenseSkill='(null)',@im_aJobLv='(null)',@im_dwExpertLv=0,@im_idMarkingWorld=0,@im_vMarkingPos_x=0.000000,@im_vMarkingPos_y=0.000000,@im_vMarkingPos_z=0.000000,@im_nRemainGP=0,@im_nRemainLP=0,@im_nFlightLv=0,@im_nFxp=0,@im_nTxp=0,@im_lpQuestCntArray='(null)',@im_chAuthority='F',@im_dwMode=0,@im_idparty=0,@im_idMuerderer=0,@im_nFame=0,@im_nDeathExp=0,@im_nDeathLevel=0,@im_dwFlyTime=0,@im_nMessengerState=0,@iTotalPlayTime=0,@im_Card='(null)',@im_Index_Card='(null)',@im_ObjIndex_Card='(null)',@im_Cube='(null)',@im_Index_Cube='(null)',@im_ObjIndex_Cube='(null)',@im_Inventory='(null)',@im_apIndex='(null)',@im_adwEquipment='(null)',@im_dwObjIndex='(null)',@im_aSlotApplet='(null)',@im_aSlotItem='(null)',@im_aSlotQueue='(null)',@im_SkillBar=0,@im_Bank='(null)',@im_apIndex_Bank='(null)',@im_dwObjIndex_Bank='(null)',@im_dwGoldBank=0,@im_nFuel=0,@im_tmAccFuel=0,@im_dwSMTime='(null)',@iSkillInfluence='(null)',@im_aCompleteQuest='(null)',@im_extInventory='(null)',@im_InventoryPiercing='(null)',@im_extBank='(null)',@im_BankPiercing ='(null)',@im_dwReturnWorldID=0,@im_vReturnPos_x=0.000000,@im_vReturnPos_y=0.000000,@im_vReturnPos_z=0.000000,@im_nPKValue=0,@im_dwPKPropensity=0,@im_dwPKExp=0,@im_nAngelExp=0,@im_nAngelLevel=0,@iszInventoryPet='(null)',@iszBankPet='(null)', @im_dwPetId=0,@im_nExpLog=0, @im_nAngelExpLog=0,@im_nCoupon=0,@im_nHonor=-1,@im_nLayer=0,@im_nCampusPoint=0,@im_idCampus=0,@im_aCheckedQuest='(null)'
SQLSTATE:23000 error:[Microsoft][SQL Native Client][SQL Server]Cannot insert duplicate key row in object 'dbo.INVENTORY_TBL' with unique index 'INVENTORY_ID1'.
2012/04/07	00:21:40
query:CHARACTER_STR 'I1',@im_idPlayer='0000000',@iserverindex='01',@iaccount='netsurf77',@im_szName='АПРВОАР',@iplayerslot=0,@idwWorldID=1,@im_dwIndex=12,@im_vPos_x=6971.984375,@im_vPos_y=100.000000,@im_vPos_z=3336.884277,@im_szCharacterKey='(null)',@im_dwSkinSet=0,@im_dwHairMesh=0,@im_dwHairColor=-329126,@im_dwHeadMesh=0,@im_dwSex=1,@im_vScale_x=0.000000,@im_dwMotion=0,@im_fAngle=0.000000,@im_nHitPoint=0,@im_nManaPoint=0,@im_nFatiguePoint=0,@im_dwRideItemIdx=0,@im_dwGold=0,@im_nJob=0,@im_pActMover='(null)',@im_nStr=0,@im_nSta=0,@im_nDex=0,@im_nInt=0,@im_nLevel=0,@im_nExp1=0,@im_nExp2=0,@im_aJobSkill='(null)',@im_aLicenseSkill='(null)',@im_aJobLv='(null)',@im_dwExpertLv=0,@im_idMarkingWorld=0,@im_vMarkingPos_x=0.000000,@im_vMarkingPos_y=0.000000,@im_vMarkingPos_z=0.000000,@im_nRemainGP=0,@im_nRemainLP=0,@im_nFlightLv=0,@im_nFxp=0,@im_nTxp=0,@im_lpQuestCntArray='(null)',@im_chAuthority='F',@im_dwMode=0,@im_idparty=0,@im_idMuerderer=0,@im_nFame=0,@im_nDeathExp=0,@im_nDeathLevel=0,@im_dwFlyTime=0,@im_nMessengerState=0,@iTotalPlayTime=0,@im_Card='(null)',@im_Index_Card='(null)',@im_ObjIndex_Card='(null)',@im_Cube='(null)',@im_Index_Cube='(null)',@im_ObjIndex_Cube='(null)',@im_Inventory='(null)',@im_apIndex='(null)',@im_adwEquipment='(null)',@im_dwObjIndex='(null)',@im_aSlotApplet='(null)',@im_aSlotItem='(null)',@im_aSlotQueue='(null)',@im_SkillBar=0,@im_Bank='(null)',@im_apIndex_Bank='(null)',@im_dwObjIndex_Bank='(null)',@im_dwGoldBank=0,@im_nFuel=0,@im_tmAccFuel=0,@im_dwSMTime='(null)',@iSkillInfluence='(null)',@im_aCompleteQuest='(null)',@im_extInventory='(null)',@im_InventoryPiercing='(null)',@im_extBank='(null)',@im_BankPiercing ='(null)',@im_dwReturnWorldID=0,@im_vReturnPos_x=0.000000,@im_vReturnPos_y=0.000000,@im_vReturnPos_z=0.000000,@im_nPKValue=0,@im_dwPKPropensity=0,@im_dwPKExp=0,@im_nAngelExp=0,@im_nAngelLevel=0,@iszInventoryPet='(null)',@iszBankPet='(null)', @im_dwPetId=0,@im_nExpLog=0, @im_nAngelExpLog=0,@im_nCoupon=0,@im_nHonor=-1,@im_nLayer=0,@im_nCampusPoint=0,@im_idCampus=0,@im_aCheckedQuest='(null)'
SQLSTATE:01000 error:[Microsoft][SQL Native Client][SQL Server]The statement has been terminated.

my error.txt:
Code:
2012/ 4/ 7   00:20:16   OP: 24874113, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0


2012/ 4/ 7   00:20:17   OP: 1250, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0

What i have:
Windows 7 x64
MSSQL 2005
ODBC language changed to 'English'
Server files & Client from here (client translated to russian)
Official Server Source v15 (comlpiled via VCpro2003 sp1)
Official databases (not fixed coz link broken)
Neuz strings:
Code:
STRINGTABLE
LANGUAGE LANG_KOREAN, 0x1
{
1, 	"127.0.0.1"
2, 	"12"
3, 	"0"
4, 	"1"
5, 	"1"
6, 	"20070712"
7, 	"15400"
8, 	"5000"
9, 	"5"
10, 	"1251"
11, 	"0"
}

update3:
I resolved the "character already exist" problem:
Just restore database CHARACTER_01_DBF to its original state (seem like when you experience difficulty with creation of the character, the database becomes soiled, dunno where axactly, that leads to a problem with the subsequent creation of the character)
 
Last edited:
Have you tried changing the name manually in the database and see if it works? Since the in-game display works, I'd bet that MsSql isn't compatible with foreign letters.

Confirmed: The database isn't compatible with the foreign letters.

--

This is for Mssql 2000, but see if it's the same on the 2005

Click Programs, Microsoft SQL Server, Client Network Utility on the Start menu.
The SQL Server Client Network Utility dialog opens.

Select the following check boxes on the DB-Library Options tab:
Automatic ANSI to OEM conversion
Use international settings
Click OK.
 
Have you tried changing the name manually in the database and see if it works? Since the in-game display works, I'd bet that MsSql isn't compatible with foreign letters.

Confirmed: The database isn't compatible with the foreign letters.

--

This is for Mssql 2000, but see if it's the same on the 2005

Click Programs, Microsoft SQL Server, Client Network Utility on the Start menu.
The SQL Server Client Network Utility dialog opens.

Select the following check boxes on the DB-Library Options tab:
Automatic ANSI to OEM conversion
Use international settings
Click OK.

Yes, ive tried to change it manul - it works! but not from query... why? The name is right in query (see CQuery-LogFile_20120407.txt print)
Thank you for helping, but it doesnt work
Originally SQL Server Client Network Utility located at
Code:
C:\WINDOWS\system32\cliconfg.exe

Well, not everything is so bad:
I resolved the "character already exist" problem:
Just restore database CHARACTER_01_DBF to its original state (seem like when you experience difficulty with creation of the character, the database becomes soiled, dunno where axactly, that leads to a problem with the subsequent creation of the character)

I will try to make localization into the codepage 1252. At first with a file letter_RUS.inc
In general it would be quite good to translate both the server and the client on utf-8. It is possible? Or maybe fully convert databases to another sorting table?

1252 wont work, info 100%

the same thing with mail.
when worldserver works i see letters properly, but if i restart it - "??? ?? ? ?????? ????"
mails stored in databese are incorrect, even if exposed Cyrillic_General_BIN for columns. Besides, it is possible to change them manually and they will be displayed as it is necessary. WTF?! ifound dat abnormal

@Improved,
MsSql isn't compatible with foreign letters
for every solution? :blink: or just flyff?
 
Last edited:
i have no idea if this would help, but try to find a language pack for your language to install to mssql.. not even sure if that exists for mssql.. worth a try

i got full lang pack already

Did you actually succeed with having the foreign letters in-game? I've got difficulties understanding if you found a workaround or not.

nope, i just trying to get plaintext dump and rebuild databases with right collation. i'd bet for it

The only thing that prevents to localize the project completely is that collation Latin1 doesnt support russian text. Any offers? :|
 
Status
Not open for further replies.
Back