Перейти к содержанию

[MMORPG Guild Wars] команда изменения статуса


Гость Noname

Рекомендуемые сообщения

Я нашел в коде функцию отвечающую за изменения статуса игрока (В сети, вне сети, ушел, не беспокоить). 

Где, 0 - это в не сети, 1 - в сети, 2 - не беспокоить, 3 - ушел. 

Спойлер

0083C5A0                        | 55                                | push ebp                              |
0083C5A1                        | 8BEC                              | mov ebp,esp                           |
0083C5A3                        | 56                                | push esi                              |
0083C5A4                        | 8B75 08                           | mov esi,dword ptr ss:[ebp+8]          |
0083C5A7                        | 83FE 04                           | cmp esi,4                             |
0083C5AA                        | 7C 14                             | jl gw.83C5C0                          |
0083C5AC                        | 68 2F020000                       | push 22F                              |
0083C5B1                        | BA 9028A600                       | mov edx,gw.A62890                     | A62890:"p:\\code\\gw\\friend\\friendapi.cpp"
0083C5B6                        | B9 EC28A600                       | mov ecx,gw.A628EC                     | A628EC:"status < FRIEND_STATUSES"
0083C5BB                        | E8 6060CCFF                       | call gw.502620                        |
0083C5C0                        | 8935 F0ABF200                     | mov dword ptr ds:[F2ABF0],esi         |
0083C5C6                        | 83FE 03                           | cmp esi,3                             |
0083C5C9                        | 77 40                             | ja gw.83C60B                          |
0083C5CB                        | FF24B5 1CC68300                   | jmp dword ptr ds:[esi*4+83C61C]       |
0083C5D2                        | 33C0                              | xor eax,eax                           |
0083C5D4                        | 5E                                | pop esi                               |
0083C5D5                        | 8945 08                           | mov dword ptr ss:[ebp+8],eax          |
0083C5D8                        | 5D                                | pop ebp                               |
0083C5D9                        | E9 52C2CCFF                       | jmp gw.508830                         |
0083C5DE                        | B8 01000000                       | mov eax,1                             |
0083C5E3                        | 5E                                | pop esi                               |
0083C5E4                        | 8945 08                           | mov dword ptr ss:[ebp+8],eax          |
0083C5E7                        | 5D                                | pop ebp                               |
0083C5E8                        | E9 43C2CCFF                       | jmp gw.508830                         |
0083C5ED                        | B8 02000000                       | mov eax,2                             |
0083C5F2                        | 5E                                | pop esi                               |
0083C5F3                        | 8945 08                           | mov dword ptr ss:[ebp+8],eax          |
0083C5F6                        | 5D                                | pop ebp                               |
0083C5F7                        | E9 34C2CCFF                       | jmp gw.508830                         |
0083C5FC                        | B8 03000000                       | mov eax,3                             |
0083C601                        | 5E                                | pop esi                               |
0083C602                        | 8945 08                           | mov dword ptr ss:[ebp+8],eax          |
0083C605                        | 5D                                | pop ebp                               |
0083C606                        | E9 25C2CCFF                       | jmp gw.508830                         |
0083C60B                        | B8 04000000                       | mov eax,4                             |
0083C610                        | 5E                                | pop esi                               |
0083C611                        | 8945 08                           | mov dword ptr ss:[ebp+8],eax          |
0083C614                        | 5D                                | pop ebp                               |
0083C615                        | E9 16C2CCFF                       | jmp gw.508830                         |

 

До обновления работала эта инструкция.

CommandChangeStatus:
mov eax,dword[eax+4]
call ChangeStatusFunction
ljmp CommandReturn

Выше я предоставил пример из 4х строчек, это старая функция, которая работала до обновления клиента(я не знаю поможет ли это). Еще выше расположен код уже обновленного клиента. Как мне написать команду изменения статуса исходя из данной функции?

Ссылка на комментарий
Поделиться на другие сайты

9 минут назад, Noname сказал:

Что круто? Надо инструкцию написать, крашитси игра со старой инструкцией. 

Составление темы в разделе вопросов без вопроса, вот что круто.

 

Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.