Other > Suggestions

[Interface/I18n] Support iso charsets / unicode and use OS keyboard Layout

<< < (2/2)

Yamcha:
Then type ???? next time, its left from the point key

Archvile:
Yamcha, metzger, you seem not to understand that some languages use different keyboard layouts. Like you need to press "Y" to type "Z" for example. I can very well understand that it can be troublesome in work, so I support this. Polish and Czech aren't relevant example here, because they use standard US layouts.

Yamcha:
I fully understand, but its not that big problem.

I doubt  this will ever be implemented and if someone really has problems finding the right key because he dont know the UK or US layout he can still google for it or take a look into the control panel. Win7 has nice images of all the different kinds too

klei:
Well, using fixed Keyboard Layout is bad design. Take a look at M.A.X.R.. It succeeds because it supports it's international community well.

Such design related decisions - bad decisions - can render a SW product not to success in the market regardless of how powerful would the SW be (this not applies to FOnline as it is not a product. So don't even try to flame about this comment here).

The operating system is there to hide the HW dependencies... I don't care if my language and it's own special characters are not regarded in any way, it's just a nice to have feature which could come with unicode support/additional ASCII tables...

But it is rather easy to implement a function with a lookup table that translates the pressed Keys reported by the OS to the fixed US ASCII table, now used in-game. This way I can press the Z character on my keyboard and I will see Z in-game, instead of Y. <--This is truly annoying as hell.

Lets take Blizzard's Diablo 1 from the year 1996 as example: that game is developed for Windows OS. The game uses fixed graphical character sets only supporting the first 128 characters of the US ASCII table. There are 3 lookup tables for each graphical character sets to handle the different Keyboard layouts,the special keys, the different widths of the individual characters, and to  provide a common interface in-game regardless of your Keyboard HW.

Table 1: translate ASCII characters reported by the OS to standard US ASCII. Example: "Á" -> "A" or "ä" -> "a".

--- Code: ---INDEX(D): 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240
VALUE(H): 4F  4F  4F  4F  58  30  55  55  55  55  59  62  42  61  61  61  61  61  61  61  63  65  65  65  65  69  69  69  69  6F
ASCII   : Ó   Ô   Õ   Ö   ×   Ø   Ù   Ú   Û   Ü   Ý   Þ   ß   à   á   â   ã   ä   å   æ   ç   è   é   ê   ë   ì   í   î   ï   ð 
DIABLO  : O   O   O   O   X   0   U   U   U   U   Y   b   B   a   a   a   a   a   a   a   c   e   e   e   e   i   i   i   i   o 

--- End code ---


Table 2: FRAME to ASCII index Translation Table: map translated characters to the graphical character sets

--- Code: ---INDEX(D): 061 062 063 064 065 066 067 068 069 070 071 072 073 074 075 076 077 078 079 080 081 082 083 084 085 086 087 088 089 090
ASCII   : =   >   ?   @   A   B   C   D   E   F   G   H   I   J   K   L   M   N   O   P   Q   R   S   T   U   V   W   X   Y   Z 
FRAME(H): 2E  00  36  00  01  02  03  04  05  06  07  08  09  0A  0B  0C  0D  0E  0F  10  11  12  13  14  15  16  17  18  19  1A
smaltext: =   NO  ?   NO  A   B   C   D   E   F   G   H   I   J   K   L   M   N   O   P   Q   R   S   T   U   V   W   X   Y   Z 

--- End code ---

This should not be such hard task to do and saying that this feature is not needed is improvidence.

Best regards,
 klei

Navigation

[0] Message Index

[*] Previous page

Go to full version