Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
NCOTP\CardKey
#1
Возник интересный вопрос по поводу one time password системе клиента. Знаю что ГВ научились ее включать/выключать, но всетаки Smile где и как хранится инфа/флаги активации сей приблуды? естественно без изменения лэнга в клиенте. Просмотрел скрипты, ендж, и ничего толкового не нашел( кроме какого стейта кард кея, и упоминанием в скрипте нВиндов - RequestCardKeyLogin, неизвестно где хранящимся. Если секретно, не отказался бы от разъяснения в приват Smile
Ответ
#2
апнем пожалуй Smile
Ответ
#3
Зависит от хроник.
Можно поменять сменой языка на кор. ( будет проблема с приставками величин )
Либо пересобирать .ugx паки ( большой геморой )
Ниже года их нету и скорей всего где то в dll или uc

PHP код:
<?php 
public function onCallGFxFunction(arg1:String, arg2:String):void
{
var
loc1:*=null;
if (
arg2 != null)
{
loc1 = ncsoft.l2.util.textUtil.TextOption.stringToObject3(arg2);
}
var
loc2:*=arg1;
switch (
loc2)
{
case
"flashInit":
{
this.msgTxt.htmlText = "<a href=\'asfunction:homePage\'>TTT</a>";
this.setOTPVisible(loc1.isOTP == "True");
this.setTextString(loc1.isUseEMailAccount == "True");
this.ncotpBtn.tooltip = ncsoft.l2.data.L2UIToolTipData.getInstance().getXMLToolTipString(ncsoft.l2.data.L2UIToolTipData.SIMPLE_TYPE, loc1.optMsg);
if (!(
loc1.logInID == "") && !(loc1.logInID == undefined) && !(loc1.logInID == null))
{
this.idtxt.text = loc1.logInID;
this.idtxt.validateNow();
this.idtxt.textField.setSelection(loc1.logInID.length, loc1.logInID.length);
this.passtxt.focused = 1;
this.passtxt.validateNow();
}
else
{
this.idtxt.focused = 1;
this.idtxt.validateNow();
}
break;
}
case
"loginSuccess":
{
this.idtxt.text = "";
this.passtxt.text = "";
this.opttxt.text = "";
this.msgTxt.htmlText = "";
break;
}
case
"ErrorMsg":
{
this.passtxt.text = "";
this.opttxt.text = "";
this.msgTxt.htmlText = arg2;
break;
}
}
return;
}

Передача параметров
PHP код:
<?php 
param
= makeVar2Str( "logInID", GetLastLoginID() );
param = param @ makeVar2Str( "isOTP", string( IsUseOTP()) );
param = param @ makeVar2Str( "optMsg", GetSystemMessage( 5068 ) );
param = param @ makeVar2Str( "isUseEMailAccount", String( isUseEMailAccount() ) );
callGFxFunction("LogIn","flashInit", param);
Человек просто обязан ошибаться, раз другие учатся на его ошибках .......
Ответ
#4
а что за скрипт? и походу есть надежда, что isOTP всеже - глобальная переменная))) надо копнуть дефы, может есть способы куда проще) спасибо дядьк, как всегда - ГВ нв высоте)
Ответ
#5
KilRoy Написал:а что за скрипт? и походу есть надежда, что isOTP всеже - глобальная переменная))) надо копнуть дефы, может есть способы куда проще) спасибо дядьк, как всегда - ГВ нв высоте)

можно просто поменять значение в Interface.u
c
PHP код:
<?php 
param
= param @ makeVar2Str( "isOTP", string( IsUseOTP()) );
на
PHP код:
<?php 
param
= param @ makeVar2Str( "isOTP", string( true ) );

а так да переменная глобальная ( только не isOTP а IsUseOTP() ) .

PHP код:
<?php 
char __stdcall UUIScript
::execIsUseOTP(int a1, int a2)
{
LOBYTE(v4) = sub_106BBD10(); <-- тут
*(_DWORD *)a2 = v4;
return
v4;
}
Человек просто обязан ошибаться, раз другие учатся на его ошибках .......
Ответ
#6
ну тогда дело решено, спасибо за разъяснения)
Ответ


Перейти к форуму:


Пользователи, просматривающие эту тему: 2 Гость(ей)