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

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

Цель 1: с помощью MHS нарисовать график и текст в окне некоторой игрушки.

Цель 2: разобраться как связать события мышки с рисуемыми частями.

Нужна помощь в поиске информации по технологии рисования в окне чужого процесса (игры) и в перехвате событий: мышки, клавиатуры к примеру.

  :)

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

In Game Menu [DirectX9](MASM32 source included)

Тебе в помощь. Сам когда-то использовал ее, переделанную мной, в трейнере (ддл'ка извлекалась из ресурсов игры при запуске трейнера, а при закрытии удалялась). Но, что-то, потом забил на ингей меню и выкинул из кода трейнера.

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

 Что-то я не совсем понял где в твоём примере код, который рисует в видео-контексте игры.  :)

Но зато я нашёл статью (я, обычно, ищу статьи с известными подходами, чтобы по ним побыстрее сориентироваться чем копаться в документациях). И вот результат:

shot00004.jpg

Статья - тут

Попробую подобное повторить и сделать на MHS.

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

А вообще ничего сложного.

1. Нужно получить D3DDev: IDirect3DDevice9 как результат из перехваченой CreateDevice9. Затем инициализировать тут же g_Font: ID3DXFont

2. Перехватить EndScene9 с выполнением

  TextRect := Rect(100,100,100,100);

  g_Font.DrawTextA(nil, PChar('Превед!!! :)'), -1, @TextRect,

    DT_LEFT or DT_NOCLIP, D3DCOLOR_RGBA($00, $ff, $ff, $ff) );

И это всё для вывода текста, а для рисования нужно поискать необходимые методы.

Непонятно зачем автору именно для этой задачи надо было ставить хук на Direct3DCreate9. Я думаю это не нужно было.

----------

Та статья хорошо показывает как и что работает.

Однако, я не хочу лоадер процесса, я не хочу подгрузчик dll и я хочу рисовать в окне игры, когда игра уже запущена. Мне не нужны хуки, т.к. я могу использовать инъекции кода: 

1) в одну из сигнатур кода, который работает с D3DDev для получения указателя на D3DDev (или аналогичного OpenGL) и инициализации шрифта

2) в одну из сигнатур EndScene9 для разных DirectX-библиотек или для OpenGL для рисования текста.

Думаю, можно было сделать и получше.  С теорией всё понятно, можно приступить к практике.

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

То, что написано в статье у меня получилось (можно посмотреть на скриншоте)

post-3-1280205660,75_thumb.jpg

Теперь попробую осуществить подобное в MHS.

Я хочу сделать так чтобы скрипты MHS выводили информацию в окно игры, а не только в консоль MHS...

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

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

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

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