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