Установка и поддержка RFO сервера : Обсуждение RFO серверов, их установки, конфигурации, устранения ошибок, а также поддержке. Уголок Администратора.
11.06.2014, 22:39
#1
На доске почёта
OFFLINE
Регистрация: 29.12.2012
Сообщений: 2
Благодарностей:
121 всего
Premium service и с чем его едят
Хотел бы узнать,что и как работает о отображении премиум пользователя.
Юзая поиск,наткнулся что DefaultSet.tmp отвечает за надпись премиум,заюзав гугл решил с помощью чего его открыть,первые темы были сразу понятно,на чем написан тем и открывать,хотел бы узнать чем открывать DefaultSet.tmp?
Еще есть догадки на счет rfonline.bin,но это догадки,подскажите где правится надпись при входе в игру(при загрузке) премиум,а так же в самой игре.
Суть не в том,что хочу готовое получить,а узнать чем правится и в каком месте. Кому не сложно либо в пм\скайп\в теме ответьте.Заранее спасибо.
11.06.2014, 23:08
#2
Проф. продавец
OFFLINE
Регистрация: 23.07.2012
Сообщений: 2,402
Благодарностей:
894 всего
это в лаунчере структура заполнения этого файла, где то она не полная (пример new paradise)
12.06.2014, 13:08
#3
На доске почёта
OFFLINE
Регистрация: 29.12.2012
Сообщений: 2
Благодарностей:
121 всего
Цитата:
Сообщение от
Dino
это в лаунчере структура заполнения этого файла, где то она не полная (пример new paradise)
лаунчер стоит написанный на c#,который ены выкладывал,доработанный
12.06.2014, 13:49
#4
Проверенный продавец
OFFLINE
Регистрация: 06.07.2012
Сообщений: 698
Благодарностей:
1,011 всего
Если интересует сама картинка, то ройтесь в спрайтах. Если отображение самой картинки, то это нужно в ковырять ваш "доработанный" лаунчер в направлении заполнения DefaultSet.tmp.
Вот такая структура DefaultSet.tmp для 6 апдейта.
Код:
#define max_id_len 12
#define KEY_NUM 4
struct _ENTER_WORLD_TEMP_DATA
{
DWORD m_dwWorldIP;
WORD m_wWorldPort;
char m_szID[max_id_len+1];
DWORD m_dwAccountSerial;
DWORD m_dwWorldMasterKey[KEY_NUM];
WORD m_wWorldIndex;
DWORD m_dwAccountSerial2;
};
Цитата:
Сообщение от
Dino
это в лаунчере структура заполнения этого файла, где то она не полная (пример new paradise)
Она там полная, просто разраб поленился по нормальному заполнять.
Последний раз редактировалось [Zeto]; 12.06.2014 в 14:39 .
12.06.2014, 23:54
#5
На доске почёта
OFFLINE
Регистрация: 29.12.2012
Сообщений: 2
Благодарностей:
121 всего
Цитата:
Сообщение от
[Zeto]
Если интересует сама картинка, то ройтесь в спрайтах. Если отображение самой картинки, то это нужно в ковырять ваш "доработанный" лаунчер в направлении заполнения DefaultSet.tmp.
Вот такая структура DefaultSet.tmp для 6 апдейта.
Код:
#define max_id_len 12
#define KEY_NUM 4
struct _ENTER_WORLD_TEMP_DATA
{
DWORD m_dwWorldIP;
WORD m_wWorldPort;
char m_szID[max_id_len+1];
DWORD m_dwAccountSerial;
DWORD m_dwWorldMasterKey[KEY_NUM];
WORD m_wWorldIndex;
DWORD m_dwAccountSerial2;
};
Она там полная, просто разраб поленился по нормальному заполнять.
вот такой код в лаучере,на счет премиума в хекс значении стоит 2
Код:
defaultSet.SetValue((byte)((byte)remdata.GetValue(5) ^ 0xAF), 19);
defaultSet.SetValue((byte)((byte)remdata.GetValue(devil) ^ 0xE0), 20);
defaultSet.SetValue((byte)((byte)remdata.GetValue(7) ^ 0x65), 21);
defaultSet.SetValue((byte)((byte)remdata.GetValue(music) ^ 0x6E), 22);
defaultSet.SetValue((byte)((byte)remdata.GetValue(5) ^ 0x3A), 41);
defaultSet.SetValue((byte)((byte)remdata.GetValue(devil) ^ 0x18), 42);
defaultSet.SetValue((byte)((byte)remdata.GetValue(7) ^ 0x9C), 43);
defaultSet.SetValue((byte)((byte)remdata.GetValue(music) ^ 0xC8), 44);
defaultSet.SetValue((byte)((byte)remdata.GetValue(10) ^ 0x3A), 45);
defaultSet.SetValue((byte)((byte)remdata.GetValue(11) ^ 0x18), 46);
defaultSet.SetValue((byte)((byte)remdata.GetValue(12) ^ 0x9C), 47);
defaultSet.SetValue((byte)((byte)remdata.GetValue(13) ^ 0xC8), 48); //айди акка,прем
defaultSet.SetValue((byte)0x3a, 39);
defaultSet.SetValue((byte)0x4b, 40); // номер серва 1 ili 2, v tom slushae, esli na 1 ip:port 2 serva est
send = new byte[8] { 0x08, 0x00, 0x15, 0x05, 0x00, 0x00, 0x00, 0x00 };
client.Send(send);
client.Receive(remdata);
send = new byte[6] { 0x06, 0x00, 0x15, 0x07, 0x00, 0x00 };
client.Send(send);
client.Receive(remdata);
defaultSet.SetValue((byte)((byte)remdata.GetValue(11) ^ 0xE6), 23);
defaultSet.SetValue((byte)((byte)remdata.GetValue(12) ^ 0x22), 24);
defaultSet.SetValue((byte)((byte)remdata.GetValue(13) ^ 0xCF), 25);
defaultSet.SetValue((byte)((byte)remdata.GetValue(14) ^ 0xCF), 26);
defaultSet.SetValue((byte)((byte)remdata.GetValue(15) ^ 0x6F), 27);
defaultSet.SetValue((byte)((byte)remdata.GetValue(16) ^ 0xDE), 28);
defaultSet.SetValue((byte)((byte)remdata.GetValue(17) ^ 0xBC), 29);
defaultSet.SetValue((byte)((byte)remdata.GetValue(18) ^ 0x5B), 30);
defaultSet.SetValue((byte)((byte)remdata.GetValue(19) ^ 0xDA), 31);
defaultSet.SetValue((byte)((byte)remdata.GetValue(20) ^ 0x5E), 32);
defaultSet.SetValue((byte)((byte)remdata.GetValue(21) ^ 0xDF), 33);
defaultSet.SetValue((byte)((byte)remdata.GetValue(22) ^ 0xAC), 34);
defaultSet.SetValue((byte)((byte)remdata.GetValue(23) ^ 0x37), 35);
defaultSet.SetValue((byte)((byte)remdata.GetValue(24) ^ 0x1B), 36);
defaultSet.SetValue((byte)((byte)remdata.GetValue(25) ^ 0xCD), 37);
defaultSet.SetValue((byte)((byte)remdata.GetValue(26) ^ 0xBC), 38); // сессии
defaultSet.SetValue((byte)((byte)remdata.GetValue(5) ^ 0x3A), 0);
defaultSet.SetValue((byte)((byte)remdata.GetValue(devil) ^ 0x4B), 1);
defaultSet.SetValue((byte)((byte)remdata.GetValue(7) ^ 0x9C), 2);
defaultSet.SetValue((byte)((byte)remdata.GetValue(music) ^ 0xCB), 3);
defaultSet.SetValue((byte)((byte)remdata.GetValue(9) ^ 0xB6), 4);
defaultSet.SetValue((byte)((byte)remdata.GetValue(10) ^ 0x4F), 5); // ип ,порт
defaultSet.SetValue((byte)0xD0, 53);
defaultSet.SetValue((byte)0x32, 54);
13.06.2014, 01:07
#6
Проверенный продавец
OFFLINE
Регистрация: 06.07.2012
Сообщений: 698
Благодарностей:
1,011 всего
Цитата:
Сообщение от
Slow
вот такой код в лаучере,на счет премиума в хекс значении стоит 2
Код:
defaultSet.SetValue((byte)((byte)remdata.GetValue(5) ^ 0xAF), 19);
defaultSet.SetValue((byte)((byte)remdata.GetValue(devil) ^ 0xE0), 20);
defaultSet.SetValue((byte)((byte)remdata.GetValue(7) ^ 0x65), 21);
defaultSet.SetValue((byte)((byte)remdata.GetValue(music) ^ 0x6E), 22);
defaultSet.SetValue((byte)((byte)remdata.GetValue(5) ^ 0x3A), 41);
defaultSet.SetValue((byte)((byte)remdata.GetValue(devil) ^ 0x18), 42);
defaultSet.SetValue((byte)((byte)remdata.GetValue(7) ^ 0x9C), 43);
defaultSet.SetValue((byte)((byte)remdata.GetValue(music) ^ 0xC8), 44);
defaultSet.SetValue((byte)((byte)remdata.GetValue(10) ^ 0x3A), 45);
defaultSet.SetValue((byte)((byte)remdata.GetValue(11) ^ 0x18), 46);
defaultSet.SetValue((byte)((byte)remdata.GetValue(12) ^ 0x9C), 47);
defaultSet.SetValue((byte)((byte)remdata.GetValue(13) ^ 0xC8), 48); //айди акка,прем
defaultSet.SetValue((byte)0x3a, 39);
defaultSet.SetValue((byte)0x4b, 40); // номер серва 1 ili 2, v tom slushae, esli na 1 ip:port 2 serva est
send = new byte[8] { 0x08, 0x00, 0x15, 0x05, 0x00, 0x00, 0x00, 0x00 };
client.Send(send);
client.Receive(remdata);
send = new byte[6] { 0x06, 0x00, 0x15, 0x07, 0x00, 0x00 };
client.Send(send);
client.Receive(remdata);
defaultSet.SetValue((byte)((byte)remdata.GetValue(11) ^ 0xE6), 23);
defaultSet.SetValue((byte)((byte)remdata.GetValue(12) ^ 0x22), 24);
defaultSet.SetValue((byte)((byte)remdata.GetValue(13) ^ 0xCF), 25);
defaultSet.SetValue((byte)((byte)remdata.GetValue(14) ^ 0xCF), 26);
defaultSet.SetValue((byte)((byte)remdata.GetValue(15) ^ 0x6F), 27);
defaultSet.SetValue((byte)((byte)remdata.GetValue(16) ^ 0xDE), 28);
defaultSet.SetValue((byte)((byte)remdata.GetValue(17) ^ 0xBC), 29);
defaultSet.SetValue((byte)((byte)remdata.GetValue(18) ^ 0x5B), 30);
defaultSet.SetValue((byte)((byte)remdata.GetValue(19) ^ 0xDA), 31);
defaultSet.SetValue((byte)((byte)remdata.GetValue(20) ^ 0x5E), 32);
defaultSet.SetValue((byte)((byte)remdata.GetValue(21) ^ 0xDF), 33);
defaultSet.SetValue((byte)((byte)remdata.GetValue(22) ^ 0xAC), 34);
defaultSet.SetValue((byte)((byte)remdata.GetValue(23) ^ 0x37), 35);
defaultSet.SetValue((byte)((byte)remdata.GetValue(24) ^ 0x1B), 36);
defaultSet.SetValue((byte)((byte)remdata.GetValue(25) ^ 0xCD), 37);
defaultSet.SetValue((byte)((byte)remdata.GetValue(26) ^ 0xBC), 38); // сессии
defaultSet.SetValue((byte)((byte)remdata.GetValue(5) ^ 0x3A), 0);
defaultSet.SetValue((byte)((byte)remdata.GetValue(devil) ^ 0x4B), 1);
defaultSet.SetValue((byte)((byte)remdata.GetValue(7) ^ 0x9C), 2);
defaultSet.SetValue((byte)((byte)remdata.GetValue(music) ^ 0xCB), 3);
defaultSet.SetValue((byte)((byte)remdata.GetValue(9) ^ 0xB6), 4);
defaultSet.SetValue((byte)((byte)remdata.GetValue(10) ^ 0x4F), 5); // ип ,порт
defaultSet.SetValue((byte)0xD0, 53);
defaultSet.SetValue((byte)0x32, 54);
Это не код, это говнокод.
Касательно вашего вопроса, в каком направлении копать, вам уже указали.
Или вы желаете, чтобы вам всё сделали за "спасибо"?
Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.