

In episode 9 of the second season of Log Horizon, when...

> Shiroe died and appeared on the unofficial 14th server of Elder Tale, the
> test server, which was set to be on the Moon instead of on the Earth,

... he checked the location and the dialog was mostly garbled up, saved for
the location name [_Mare
Tranquillitatis_](http://en.wikipedia.org/wiki/Mare_Tranquillitatis).

![](https://i.stack.imgur.com/Lx6iY.png)

Can the garbled up text be decrypted, or are they simply garbage?


CC BY-SA 3.0
2014-12-04T18:19:01.723
15479
2015-02-08T04:40:00.523
1398
question
log-horizon
Are the garbled up text in Log Horizon Season 2 Episode 9 meaningful or simply garbage?


Yes, the garbled up text is the result of
[mojibake](http://en.wikipedia.org/wiki/Mojibake), where the original text in
Japanese, encoded in [Shift-JIS](http://en.wikipedia.org/wiki/Shift_JIS)
encoding, is decoded by
[Windows-1256](http://en.wikipedia.org/wiki/Windows-1256) encoding.

If you ever open up a Japanese web page or text file encoded in Shift-JIS
encoding (2-byte character set) under some Western encoding in Windows (1-byte
character set), you will see high frequency of `ƒ` paired up with some other
character in the resulting view. Since I observe that there are Arabic
characters in the image, I used one of my existing text file which is encoded
in Shift-JIS and tried opening it with Arabic (Windows) encoding in the
browser, and I found out that Arabic (Windows) or Western encoding has the
same mapping for `ƒ` and `Œ` (which is another common character in the garbled
up text).

After comparing to the [properly rendered location status
window](https://i.stack.imgur.com/F0QeJ.jpg) and some guesswork, I managed to
decode the garbled up text into proper Japanese text (the brackets 〈 and 〉 are
added for clarity and not decoded from garbled up text):

[code]

    〈サーバー〉
    月サーバー
    〈ゾーン〉
    月サーバー
    〈区分〉
    個別ゾーン/モンスター出現なし
    〈その他〉
    戦闘行為可能区域
    　全特技使用可能
    　進入許可/制限あり
    　退出許可/制限あり
    
[/code]

Translation:

[code]

    <Server>
    Moon Server
    <Zone>
    Moon Server
    <Classification>
    Isolated zone/No monster
    <Other>
    PVP allowed
    Special skills allowed
    Entry restriction/Restricted
    Exit restriction/Restricted
    
[/code]

# Appendix

To cross-check the result, you can use the following piece of Python 3 code:

[code]

    garbled = 'ƒTپ[ƒoپ[\nŒژƒTپ[ƒoپ[\nƒ]پ[ƒ“\nŒژƒTپ[ƒoپ[\n‹و•ھ\nŒآ•تƒ]پ[ƒ“/ƒ‚ƒ“ƒXƒ^پ[ڈoŒ»‚ب‚µ\n‚»‚ج‘¼\nگي“¬چsˆ×‰آ”\\‹وˆو\nپ@‘S“ء‹Zژg—p‰آ”\\\nپ@گi“ü‹–‰آ/گ§Œہ‚\xa0‚è\nپ@‘قڈo‹–‰آ/گ§Œہ‚\xa0‚è'
    print(garbled.encode('Windows-1256').decode('Shift-JIS'))
    
[/code]

Below is the **view-only** source1 of the mojibake for comparison with the
image:

1 The text below contains U+200E Left-to-Right Mark to prevent Arabic
characters from rendering right-to-left and changing their shapes based on
their position. Another problem that prevents straight copying is due to the
presence of U+00A0 No-Break Space, which is converted to space when copied
from browser.

[code]

    ƒ‎T‎پ‎[‎ƒ‎o‎پ‎[‎
    Œ‎ژ‎ƒ‎T‎پ‎[‎ƒ‎o‎پ‎[‎
    ƒ‎]‎پ‎[‎ƒ‎“‎
    Œ‎ژ‎ƒ‎T‎پ‎[‎ƒ‎o‎پ‎[‎
    ‹‎و‎•‎ھ‎
    Œ‎آ‎•‎ت‎ƒ‎]‎پ‎[‎ƒ‎“‎/‎ƒ‎‚‎ƒ‎“‎ƒ‎X‎ƒ‎^‎پ‎[‎ڈ‎o‎Œ‎»‎‚‎ب‎‚‎µ‎
    ‚‎»‎‚‎ج‎‘‎¼‎
    گ‎ي‎“‎¬‎چ‎s‎ˆ‎×‎‰‎آ‎”‎\‎‹‎و‎ˆ‎و‎
    پ‎@‎‘‎S‎“‎ء‎‹‎Z‎ژ‎g‎—‎p‎‰‎آ‎”‎\‎
    پ‎@‎گ‎i‎“‎ü‎‹‎–‎‰‎آ‎/‎گ‎§‎Œ‎ہ‎‚‎ ‎‚‎è‎
    پ‎@‎‘‎ق‎ڈ‎o‎‹‎–‎‰‎آ‎/‎گ‎§‎Œ‎ہ‎‚‎ ‎‚‎è‎
    
[/code]


CC BY-SA 3.0
2014-12-04T19:13:27.510
15480
2015-02-08T04:40:00.523
2015-02-08T04:40:00.523
1398
1398
15479
answer