interactive fiction system for utf-8 RTL languages

This makes me curious - has there ever been a parser system in Asian languages? I suspect the same hurdles would be encountered there.

There has! Sierra’s 1980 “Mystery House” was translated into Japanese twice, in 1982 and 1983. It used only katakana, and I don’t know how sophisticated the parser was, but it was definitely a parser game.

(If anyone knows more Japanese than I do, and wants to evaluate the parser, there’s a walkthrough that lists the commands you need.)

I’m sure there’s more recent IF in Asian languages as well, but given that I don’t speak any well enough to play, I haven’t done much research.

I recall the Digital Antiquarian reporting on the first Japanese adventure game – which was written in English. filfre.net/2012/07/japanese-adventuring/ I gather it’s been done (well, you can see screenshots of the Japanese conversions of Infocom games at Mobygames, memory suggests that the early offerings of Koei and Square (“The Death Trap”) also included Japanese text adventures like eg. the original version of Princess Tomato in the Salad Kingdom) but The Alphabet Problem likely led toward the genre evolving there toward visual novels and other menu-driven variants.

[size=150]that’s reasonable at that time. but now the programming technology is far advanced, the international market outside the English language still untapped so the chance for developers to make a great profit if they adapt Unicode utf-8 non Latin character set [/size]

I just did a quick test in TADS 3, and it supports UTF-8 Arabic verbs:

DefineIAction(Foo)
    execAction()
    {
        "هذا هو المطبخ";
    }
;

VerbRule(Foo)
    'المطبخ'
     : FooAction
     verbPhrase = ''
;

This results in the following while running the game in QTads:

>المطبخ هذا هو المطبخ

(The vanilla TADS interpreter probably won’t work for this. The TADS Workbench also won’t work for writing the code. You need an editor with Unicode support.)

However, you would need to translate the TADS 3 parser to Arabic yourself, and RTL input and output would need to be implemented in the interpreter. It might be easier to use WebUI instead so that the output is rendered by a web browser, not by the interpreter.

thank you for your reply