This is Javascript version of the Code Wheel copy protection used in Curse of the Azure Bonds
Select one of each the Espruar and Dethek runes to see the resulting codes.
Path123456
-..-..-..
- - - - -
………
// <![CDATA\[ <br>var espruar = -1; var dethek = -1; function SetRune(runeSet, runeId) { if( runeSet == 0 ) { espruar = runeId; } else { dethek = runeId; } if( espruar >= 0 ) if( dethek >= 0 ) { for(var i = 0; i < 6; i++) { CalcResult( "dashdot"+(5-i), espruar, dethek, 0, i ); CalcResult( "dash"+(5-i), espruar, dethek, 1, i ); CalcResult( "dot"+(5-i), espruar, dethek, 2, i ); } } } var codeWheel = "CWLNRTESSCEDCSHSISERRRNSHSSTSSNNHSHN" + "LAASRDAIILIDSUGADAEEOEGRLSELIITESOIO"+ "LRUNIMMORIIGRRIUPTIIUELIMLHMIXACGRIL"+ "Z0LIOHEUVNODSGEOGXYWISIOCRARLRARRHOI"+ "AMTELRLUIYNAEOOITOUELRREREUIMADPPFAB"+ "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890"; function CalcResult(id, espruar, dethek, code\_path, code\_row) { var code\_index = espruar + 0x22 - dethek + (code\_path * 12) + ((5 - code\_row) << 1); while( code\_index > 35 ) code\_index -= 36; while( code\_index < 0 ) code\_index += 36; var index = (code\_row*36) + code_index; document.getElementById(id).innerHTML = codeWheel.substring(index,index+1); } <br>// ]]>