Aion Translator between Asmodian <-> Elyos languages.
More...
Aion Translator between Asmodian <-> Elyos languages.
In game this module is used by 4 commands:
- ?elyos: This is whta an Asmodian uses to talk to Elys
- ?asmo: This is what Elyos use to talk to Asmodians
- ?relyos: The reverse of ?elyos (used by Elyos to decode what other Elyos said to Asmodians)
- ?rasom: Reverse of ?asmo (used by Asmodians to decode what other Asmodians said to elyos)
- Note
- The tables and algorithm there was not inveted by me, but was ripped off on a forum thread on aionsource.com
- Todo:
- Update credits for the translator.
How does it work?
- There are 4 translation tables; start with Table 1
- Translate the character in the In row to the character in the Out row
- Non-alphanumeric characters are not translated, but they do reset the table index to Table1
- Move to the table with index NextTbl
- Repeat until done
void aion_rtranslate |
( |
char * |
txt, |
|
|
uint32_t |
langid |
|
) |
| |
Reverse translator. This uses the translation formula to reverse a translated a text back to normal language.
This function does the opposite of aion_translate().
- Note
- This is used by the ?relyos and ?rasmo commands
- Parameters
-
[in,out] | txt | Input/Output text to translate |
[in] | langid | Language ID. Either LANG_ASMODIAN or LANG_ELYOS |
- See Also
- aion_translate()
void aion_translate |
( |
char * |
txt, |
|
|
uint32_t |
langid |
|
) |
| |
Translate text to a language. Currently only the Asmodian and Elyos language are supported. If somebody wants to add support for Mau or Krall, feel free to send patches :P
Supported language IDs:
- Note
- This is used by the ?relyos and ?rasmo commands
- Parameters
-
[in,out] | txt | Input/Output text |
[in] | langid | Language ID |
- See Also
- aion_rtranslate()
Initial value:=
{
.al_table =
{
{
.at_alpha = "ihkjmlonqpsrutwvyxazcbedgf",
.at_next = "11111111111111111121222222",
},
{
.at_alpha = "dcfehgjilknmporqtsvuxwzyba",
.at_next = "11111111111111111111111122",
},
{
.at_alpha = "edgfihkjmlonqpsrutwvyxazcb",
.at_next = "11111111111111111111112122",
},
{
.at_alpha = "@@@@@@@@@@@@@@@@@@@@@@@@@@",
.at_next = "33333333333333333333333333",
}
}
}
Elyos -> Asmodian language translation table
Initial value:=
{
.al_table =
{
{
.at_alpha = "jkhinolmrspqvwtuzGbcJafgde",
.at_next = "11111111111111111322322222",
},
{
.at_alpha = "efcdijghmnklqropuvstyzabIJ",
.at_next = "11111111111111111111112233",
},
{
.at_alpha = "fgdejkhinolmrspqvwtuzGbcJa",
.at_next = "11111111111111111111132232",
},
{
.at_alpha = "ghefklijopmnstqrwxuvGHcdab",
.at_next = "11111111111111111111332222",
}
}
}
Asmodian -> Elyos language translation table