Перейти к содержанию
Авторизация  
Noname

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

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

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

Где, 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 сказал:

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

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

 

Поделиться сообщением


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

×

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

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