How to work with 6.0.5.0 2D client (Not for RunUO.com users) - Ultima Online Development - Статьи - В мирке жывотнастей
RUOSI
Воскресенье, 20.05.2012, 12:58



Приветствую Вас Гость | RSS
[ Главная ] [ Статьи ] [ Регистрация ] [ Вход ]
Меню сайта

Категории каталога
Ultima Online Development [3]

Главная » Статьи » Ultima Online Development

How to work with 6.0.5.0 2D client (Not for RunUO.com users)
First of all, i want to thank Mr. Jeremy from The Abyss for hours of laughing. After i read his posts about 6.0.5.0 solution - i was in hysterical state. New auth packet with size of 6 kb is nonsense! Good joke!
OK, my dear ladies and gentlemen, i want to say that NO NEW encryption was implemented in 6.0.5.0 patch. NO NEW packets were added in this patch. It was just a game for children and you're faked :)
How UO works before this patch: client sends seed (4 bytes, really local IP-address) and then sends packets for login server stage authorization.
How UO works after this patch: client sends seed (same 4 bytes), THEN SENDS 17 NEW BYTES, after this sends packets for login server state authorization. That's all! It's very simple, really? OK, now for these 17 cursed bytes
First byte is random value, usually it's last byte of seed, because first byte of seed is really new byte and our IP begins from second byte.
Next 16 bytes is client version - 00 00 00 06 00 00 00 00 00 00 00 05 00 00 00 00
So, all we need is to expand seed buffer for new clients.
OK, example changes:

MessagePump.cs:
1) m_Peek = new byte[21]; // we need to increase buffer's size
2) int length = buffer.Length;
int seed_length = buffer.GetSeedLength(); // calculate our seed_length
3) if (buffer.Length >= seed_length) // change 4 for seed_length
4) buffer.Dequeue( m_Peek, 0, seed_length ); // change 4 for seed_length

ByteQueue.cs:
1) Add new function void GetSeedLength():
public int GetSeedLength()
{
if ( m_Buffer[4] == 0x80 ) // we need this check for old clients
return 4;

return 21;
}

That's all. RunUO 2.0 will now work with ANY 2D client.
Категория: Ultima Online Development | Добавил: ruosi (24.11.2007)
Просмотров: 1988 | Рейтинг: 5.0/2 |

Всего комментариев: 1
0  
1 Tymnmush   (25.07.2009 15:37)
Лучше быть просто не может =0

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа
E-mail:
Пароль:

Поиск


Copyright RUOSI © 2012      Сайт управляется системой uCoz