Facebook Twitter YouTube Frictional Games | Forum | Privacy Policy | Dev Blog | Dev Wiki | Support | Gametee

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Unicode support - In case you want to write something wonky
Author Message
Cranky Old Man Offline
Posting Freak

Posts: 986
Threads: 20
Joined: Apr 2012
Reputation: 38
Unicode support - In case you want to write something wonky

Messing about with unicode characters, this is what I've been able to confirm:

<!-- Characters ---
The "$" sign is used to issue commands. "$But" is used as a tag-character for displaying control keys (that changes depending on settings).
In case of an invalid command, the output is instead "BADCOMMAND".
There is a slight difference between the œ (oe) character (in the "Latin
Extended-A" block) and the æ (ae) character (in the "C1 Controls and
Latin-1 Supplement" block).
The epoxy barrel signs probably uses the long s (seen at the end of Latin Extended-A) not the Esh character (which can't be displayed).

<!-- Unicodes --
Although useless for written characters, characters can also be written using unicodes, through the [u...] tag, where ... is the decimal number for the unicode hex.
[u339] will for example display the œ character.
Why the russian lang files are written entirely in unicode, is beyond me, because cyrillic characters can also be written directly.

The highest non-cyrillic code is [u383] ("ſ") at the end of Latin Extended-A.
For the Cyrillic block, the lowest confirmed code is [u1040] ("А") and the highest confirmed code is [u1105] ("ё").


<!-- Supported unicode blocks --
Amnesia adheres to the unicode standard. The following unicode blocks are confirmed to be at least partially directly supported in-game:
C0 Controls and Basic Latin - Basic alphabet
C1 Controls and Latin-1 Supplement - Letters with diacritics (for european languages)
Latin Extended-A - Latin characters
Cyrillic - Russian

Note that Frictional Games has mistakenly assumed support for the General Punctuation block,
having written General Punctuation block unicodes in lots of places in the french, german and spanish lang files: [u8220] (“) [u8221] [u8222] („) [u8230] (…)
The "…" character is even written directly in base_french.lang.
These codes and characters will not display, and the ellipsis will even remove the character immediately following it.
(Frictional Games have been informed of this.)

<!-- Geany and non UTF-8 characters --
While the font range of Amnesia stretches far beyond the (UTF-8) C0 and C1 blocks, Geany presumes that the coding is UTF-8 by default.
(This doesn't seem to be set in the XML filetype configuration, so it's probably set that way for all filetypes.)
If Geany starts complaining, consider changing the default to some version of UTF-16/UCS-2. (Edit => Preferences => Files => Encodings)
However, be aware that these encodings won't work on Unix systems or for PHP and some scripts.

Noob scripting tutorial: From Noob to Pro

04-25-2012, 08:24 PM
Find Reply

Users browsing this thread: 1 Guest(s)