Valhalla Legends Forums Archive | Battle.net Bot Development | Product Language

AuthorMessageTime
Myndfyr
[quote author=Yoni link=board=17;threadid=8186;start=0#msg75785 date=1092695449]
3. Hmm, in your second post you're sending 'enUS' for "Product language", why? I think this needs to be zero.
[/quote]

I would think that we believe it to be product language in the packet, because it has signified the value of a language identifier in the past. Not having data to test at the moment, but since I'm interested -- what has worked for you?

If you're using the DWORD 'enUS', has that worked? Alternatively, if you're using U.S. English, are you using the region-language code 1033? What has worked for you all?
August 17, 2004, 11:50 PM
UserLoser.
[quote author=MyndFyre link=board=17;threadid=8216;start=0#msg76069 date=1092786612]
[quote author=Yoni link=board=17;threadid=8186;start=0#msg75785 date=1092695449]
3. Hmm, in your second post you're sending 'enUS' for "Product language", why? I think this needs to be zero.
[/quote]

I would think that we believe it to be product language in the packet, because it has signified the value of a language identifier in the past. Not having data to test at the moment, but since I'm interested -- what has worked for you?

If you're using the DWORD 'enUS', has that worked? Alternatively, if you're using U.S. English, are you using the region-language code 1033? What has worked for you all?
[/quote]

Yes, it works! I already stated that the Warcraft III client sends that (Alteast, for me and my settings)
August 18, 2004, 12:14 AM
UserLoser.
Enjoy:
[code]
.text:1900F9D0 GetProductLanguage proc near ; CODE XREF: sub_19014DB0+73p
.text:1900F9D0 mov ecx, [ecx+38h]
.text:1900F9D3 xor eax, eax
.text:1900F9D5 mov ax, cx
.text:1900F9D8 mov wLanguage, ecx
.text:1900F9DE cmp eax, 407h
.text:1900F9E3 jg short loc_1900FA08
.text:1900F9E5 jz short loc_1900F9FD
.text:1900F9E7 sub eax, 7
.text:1900F9EA cmp eax, 0Fh
.text:1900F9ED ja short loc_1900FA57
.text:1900F9EF movzx eax, byte ptr ds:word_1900FA80[eax]
.text:1900F9F6 jmp ds:ProductLanguageTable[eax*4]
.text:1900F9FD ; ---------------------------------------------------------------------------
.text:1900F9FD
.text:1900F9FD loc_1900F9FD: ; CODE XREF: GetProductLanguage+15j
.text:1900F9FD ; DATA XREF: .text:1900FA64o
.text:1900F9FD mov dwProductLanguage, 'deDE'
.text:1900FA07 retn
.text:1900FA08 ; ---------------------------------------------------------------------------
.text:1900FA08
.text:1900FA08 loc_1900FA08: ; CODE XREF: GetProductLanguage+13j
.text:1900FA08 sub eax, 409h
.text:1900FA0D cmp eax, 0Dh
.text:1900FA10 ja short loc_1900FA57
.text:1900FA12 movzx ecx, ds:byte_1900FAA8[eax]
.text:1900FA19 jmp ds:ProductLanguageTable2[ecx*4]
.text:1900FA20 ; ---------------------------------------------------------------------------
.text:1900FA20
.text:1900FA20 loc_1900FA20: ; DATA XREF: .text:1900FA68o
.text:1900FA20 ; .text:1900FA90o
.text:1900FA20 mov dwProductLanguage, 'enUS'
.text:1900FA2A retn
.text:1900FA2B ; ---------------------------------------------------------------------------
.text:1900FA2B
.text:1900FA2B loc_1900FA2B: ; DATA XREF: .text:1900FA6Co
.text:1900FA2B ; .text:1900FA94o
.text:1900FA2B mov dwProductLanguage, 'esES'
.text:1900FA35 retn
.text:1900FA36 ; ---------------------------------------------------------------------------
.text:1900FA36
.text:1900FA36 loc_1900FA36: ; DATA XREF: .text:1900FA70o
.text:1900FA36 ; .text:1900FA98o
.text:1900FA36 mov dwProductLanguage, 'frFR'
.text:1900FA40 retn
.text:1900FA41 ; ---------------------------------------------------------------------------
.text:1900FA41
.text:1900FA41 loc_1900FA41: ; DATA XREF: .text:1900FA74o
.text:1900FA41 ; .text:1900FA9Co
.text:1900FA41 mov dwProductLanguage, 'itIT'
.text:1900FA4B retn
.text:1900FA4C ; ---------------------------------------------------------------------------
.text:1900FA4C
.text:1900FA4C loc_1900FA4C: ; DATA XREF: .text:1900FA78o
.text:1900FA4C ; .text:1900FAA0o
.text:1900FA4C mov dwProductLanguage, 'ptBR'
.text:1900FA56 retn
.text:1900FA57 ; ---------------------------------------------------------------------------
.text:1900FA57
.text:1900FA57 loc_1900FA57: ; CODE XREF: GetProductLanguage+1Dj
.text:1900FA57 ; GetProductLanguage+40j
.text:1900FA57 ; DATA XREF: ...
.text:1900FA57 mov dwProductLanguage, 0
.text:1900FA61 retn
.text:1900FA61 GetProductLanguage endp

.text:1900FA62 align 4
.text:1900FA64 ProductLanguageTable dd offset loc_1900F9FD
.text:1900FA64 ; DATA XREF: GetProductLanguage+26r
.text:1900FA68 dd offset loc_1900FA20
.text:1900FA6C dd offset loc_1900FA2B
.text:1900FA70 dd offset loc_1900FA36
.text:1900FA74 dd offset loc_1900FA41
.text:1900FA78 dd offset loc_1900FA4C
.text:1900FA7C dd offset loc_1900FA57
.text:1900FA80 word_1900FA80 dw 600h ; DATA XREF: GetProductLanguage+1Fr
.text:1900FA82 dw 201h
.text:1900FA84 dw 306h
.text:1900FA86 dw 606h
.text:1900FA88 dw 406h
.text:1900FA8A dw 606h
.text:1900FA8C dw 606h
.text:1900FA8E dw 506h
.text:1900FA90 ProductLanguageTable2 dd offset loc_1900FA20
.text:1900FA90 ; DATA XREF: GetProductLanguage+49r
.text:1900FA94 dd offset loc_1900FA2B
.text:1900FA98 dd offset loc_1900FA36
.text:1900FA9C dd offset loc_1900FA41
.text:1900FAA0 dd offset loc_1900FA4C
.text:1900FAA4 dd offset loc_1900FA57
.text:1900FAA8 byte_1900FAA8 db 0 ; DATA XREF: GetProductLanguage+42r
[/code]
August 18, 2004, 12:38 AM
Yoni
Looks like you should listen to UserLoser.

I guess that selects the language of friends messages, among other things, maybe.
August 18, 2004, 2:02 AM
UserLoser.
[quote author=Yoni link=board=17;threadid=8216;start=0#msg76100 date=1092794556]
Looks like you should listen to UserLoser.

I guess that selects the language of friends messages, among other things, maybe.
[/quote]

Always listen to UserLoser.

'deDE': German/Dutch? Someone who speaks one of them, verify.
'enUS': English
'esES': Spanish
'frFR': French
'itIT': Italian
'ptBR': Portuguese/Brazillian? But messages come in English
August 18, 2004, 2:37 AM
DaRk-FeAnOr
[quote]
[22:24:52] [78:0] <From: UserLoser> Your friend UserLoser has entered Battle.net.
[22:25:14] [78:2] <From: UserLoser> Your friend UserLoser has exited Battle.net.
[22:25:42] [109:0] <From: UserLoser> Your friend UserLoser has entered Battle.net.
[22:25:46] [109:2] <From: UserLoser> Your friend UserLoser has exited Battle.net.
[22:25:54] [94:0] <From: UserLoser> Il tuo amico UserLoser si è connesso a Battle.net.
[22:28:41] [94:0] <From: UserLoser> Il tuo amico UserLoser ha abbandonato Battle.net.
[22:30:01] [62:0] <From: UserLoser> Il tuo amico UserLoser si è connesso a Battle.net.
[22:30:09] [62:2] <From: UserLoser> Il tuo amico UserLoser ha abbandonato Battle.net.
[/quote]
August 18, 2004, 2:39 AM
Yoni
[quote author=UserLoser. link=board=17;threadid=8216;start=0#msg76103 date=1092796655]
'deDE': German/Dutch? Someone who speaks one of them, verify.
[/quote]
Has to be German (Deutsche). Dutch would be NL.
August 18, 2004, 8:05 AM
DeCeP7ioN
jpJP - Japanese
August 19, 2004, 2:56 AM
LoRd
http://www.ektron.com/support/faq/translationkit/langcodes.htm
August 19, 2004, 4:21 AM
K
I use the Name property of the .NET CultureInfo.CurrentCulture (or the selected Culture). Just have to remove the dash and convert it to a dword via the BitConverter class.
August 20, 2004, 1:25 AM
TangoFour
[quote author=Yoni link=board=17;threadid=8216;start=0#msg76129 date=1092816313]
[quote author=UserLoser. link=board=17;threadid=8216;start=0#msg76103 date=1092796655]
'deDE': German/Dutch? Someone who speaks one of them, verify.
[/quote]
Has to be German (Deutsche). Dutch would be NL.
[/quote]

Definitely German

The confusion arises here: The German word for German is Deutsch, which is mainly spoken in Germany

Dutch on the other hand is the language mainly spoken in the Netherlands

The Dutch word for Dutch is Nederlands
August 20, 2004, 5:32 PM

Search