Регистрация Главная Пользователи Все разделы прочитаны
Сообщения за день Справка Регистрация

Ингейм работа с чатом

-

Общение разработчиков

- Программирование для Perfect World, общение и обсуждене разработок

Ответ
 
Опции темы
Старый 16.01.2013, 13:14   #1
 Старший сержант
Аватар для N00bSa1b0t
 
N00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядом
Регистрация: 09.04.2010
Сообщений: 204
Популярность: 5518
Сказал(а) спасибо: 49
Поблагодарили 512 раз(а) в 198 сообщениях
 
По умолчанию Ингейм работа с чатом

Где можно почитать про ингейм работу с чатом? Темы не нашел подобной =)

Хочу в боте сделать фишку - в чат/личку отправка сообщения о своем состоянии, итп.
________________
[Ссылки могут видеть только зарегистрированные пользователи. ]-cофт и прочее для комфортной игры в PW.
PW Everyday Helper Bot
  Ответить с цитированием
Старый 16.01.2013, 13:39   #2
Бандеровец
 Лейтенант-командор
Аватар для VeTaL_UA
 
VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(
Регистрация: 12.08.2010
Сообщений: 727
Популярность: 30569
Золото Zhyk.Ru: 1
Сказал(а) спасибо: 57
Поблагодарили 645 раз(а) в 386 сообщениях
Отправить сообщение для VeTaL_UA с помощью ICQ Отправить сообщение для VeTaL_UA с помощью Skype™
 
По умолчанию Re: Ингейм работа с чатом

Цитата:
Сообщение от N00bSa1b0tПосмотреть сообщение
Где можно почитать про ингейм работу с чатом?

Детальной описи нигде не видел, большинство просто шлёт ссобщения в чат через WinAPI Можешь, конечно, написать инжектор пакетов чата, если есть желание
________________
Принимаются пожертвования любых размеров в фонд поддержки начинающих программистов
Кошельки: WMZ - Z276844220882; WMR - R231028582939; WMU - U394136909210; ЯД - 410011494605270.

Perfect World: PWDatabaseScanner, Client, PWNickRenamer, PWClientRenamer, База логинов PW, Гайд по варУ, Зарабатываем репутацию.
Delphi: Авторизация на сайте с помощью Indy, Загрузка изображений с интернета в TImage с помощью Indy, Автоматическая смена стандартной версии Indy в Delphi на Indy 10.0.76 / 10.1.5, Основы парсинга с помощью Indy, Делаем Updater до программы с помощью Indy.
Other: ShowIP, FFUUU смайлы в QIP, Как играть в Minecraft (видеокурс), Как мы захватили человечество :D, Энергия в Лицемер/TopFace, PasGen.


  Ответить с цитированием
Старый 16.01.2013, 14:41   #3
-= Мастер Света =-
 Рыцарь-лейтенант
Аватар для Smertig
 
Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(
Регистрация: 31.01.2011
Сообщений: 413
Популярность: 14489
Золото Zhyk.Ru: 300
Сказал(а) спасибо: 77
Поблагодарили 361 раз(а) в 145 сообщениях
Отправить сообщение для Smertig с помощью ICQ Отправить сообщение для Smertig с помощью Skype™
 
По умолчанию Re: Ингейм работа с чатом

Проще же нажатиями клавиш? Энтер, фраза, энтер. Занимает меньше секунды
________________
Больше не занимаюсь читами, ушёл в серверную часть. Новый ник - int 3.
P.S. Но я всё такой же добрый модератор раздела PW.
  Ответить с цитированием
Старый 16.01.2013, 14:43   #4
 Пехотинец
Аватар для Nek1t
 
Nek1t на правильном путиNek1t на правильном пути
Регистрация: 31.08.2010
Сообщений: 64
Популярность: 129
Сказал(а) спасибо: 30
Поблагодарили 12 раз(а) в 7 сообщениях
 
По умолчанию Re: Ингейм работа с чатом

[Ссылки могут видеть только зарегистрированные пользователи. ] немного инфы. Там же где-то есть и про отправку.

А вот и [Ссылки могут видеть только зарегистрированные пользователи. ].
________________
Спасибо.

Последний раз редактировалось Nek1t; 16.01.2013 в 14:48.
  Ответить с цитированием
Пользователь сказал cпасибо:
N00bSa1b0t (16.01.2013)
Старый 16.01.2013, 16:10   #5
 Старший сержант
Аватар для N00bSa1b0t
 
N00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядомN00bSa1b0t в состоянии испепелить взглядом
Регистрация: 09.04.2010
Сообщений: 204
Популярность: 5518
Сказал(а) спасибо: 49
Поблагодарили 512 раз(а) в 198 сообщениях
 
По умолчанию Re: Ингейм работа с чатом

Nek1t, то, что надо было) Спасибо.
________________
[Ссылки могут видеть только зарегистрированные пользователи. ]-cофт и прочее для комфортной игры в PW.
PW Everyday Helper Bot
  Ответить с цитированием
Старый 17.01.2013, 21:29   #6
 Разведчик
Аватар для Hilling
 
Hilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личность
Регистрация: 05.09.2010
Сообщений: 32
Популярность: 1182
Сказал(а) спасибо: 38
Поблагодарили 12 раз(а) в 10 сообщениях
 
По умолчанию Re: Ингейм работа с чатом

Чтобы не плодить кучу однотипных тем, с вашего позволения напишу здесь.

Есть такой код:

Код:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;

DWORD Pid=0;
HANDLE hProc;
int CurrentChatNumber = 0;
int i=0;
wchar_t wcString [150];
UnicodeString chatstring;

//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
	: TForm(Owner)
{


}
//---------------------------------------------------------------------------

//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)
{

HWND hHandle = FindWindow("ElementClient Window","Perfect World International");
GetWindowThreadProcessId(hHandle, &Pid);

hProc = OpenProcess(0xfff, false, Pid);


		if (hProc) 
		{
				int Temp = 0;

//  0xB94C7C -  ChatNumber
//  0xB94C70 -  ChatStart

			ReadProcessMemory(hProc, (LPVOID) 0xB94C7C, &CurrentChatNumber, 4, NULL);
			Label1->Caption=CurrentChatNumber;

			for (i = 0; i < CurrentChatNumber; i++) {
			ReadProcessMemory(hProc, (LPVOID) 0xB94C70, &Temp, 4, NULL);
			ReadProcessMemory(hProc, (LPVOID) (Temp + (i*0x1C)), &Temp, 4, NULL);
			ReadProcessMemory(hProc, (LPVOID) (Temp + 0x8), &Temp, 4, NULL);

			if (Temp != 0) {

			ReadProcessMemory(hProc, (LPVOID) (Temp + 0x0), &wcString, 150 , NULL);
			Memo1->Lines->Add(wcString);
			chatstring = WideCharToString(wcString);
			ListBox1->Items->Add(chatstring);
							}


													}

		} else ShowMessage(Time().TimeString() +  " Can't connect");



}
//---------------------------------------------------------------------------
Но не получается вывести чат. Общее кол-во сообщений получаю верно.

Вывожу и в Мемо и в ListBox с преобразованием в строку, так как уже не знаю где подкрутить.

Надеюсь на помощь, так как уже голову сломал

Последний раз редактировалось Hilling; 17.01.2013 в 21:39.
  Ответить с цитированием
Старый 18.01.2013, 01:05   #7
Бандеровец
 Лейтенант-командор
Аватар для VeTaL_UA
 
VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(
Регистрация: 12.08.2010
Сообщений: 727
Популярность: 30569
Золото Zhyk.Ru: 1
Сказал(а) спасибо: 57
Поблагодарили 645 раз(а) в 386 сообщениях
Отправить сообщение для VeTaL_UA с помощью ICQ Отправить сообщение для VeTaL_UA с помощью Skype™
 
По умолчанию Re: Ингейм работа с чатом

Hilling, я читал текст по другому. Я постарался перевести код с делфи на плюсы, но в правильности не уверен на 100%, по этому выкладываю и оригинал, и перевод.

Оригинал

Перевод
________________
Принимаются пожертвования любых размеров в фонд поддержки начинающих программистов
Кошельки: WMZ - Z276844220882; WMR - R231028582939; WMU - U394136909210; ЯД - 410011494605270.

Perfect World: PWDatabaseScanner, Client, PWNickRenamer, PWClientRenamer, База логинов PW, Гайд по варУ, Зарабатываем репутацию.
Delphi: Авторизация на сайте с помощью Indy, Загрузка изображений с интернета в TImage с помощью Indy, Автоматическая смена стандартной версии Indy в Delphi на Indy 10.0.76 / 10.1.5, Основы парсинга с помощью Indy, Делаем Updater до программы с помощью Indy.
Other: ShowIP, FFUUU смайлы в QIP, Как играть в Minecraft (видеокурс), Как мы захватили человечество :D, Энергия в Лицемер/TopFace, PasGen.



Последний раз редактировалось VeTaL_UA; 18.01.2013 в 11:44.
  Ответить с цитированием
Старый 19.01.2013, 06:03   #8
-= Мастер Света =-
 Пехотинец
Аватар для rufat2005
 
rufat2005 излучает ауруrufat2005 излучает ауруrufat2005 излучает ауруrufat2005 излучает ауруrufat2005 излучает ауруrufat2005 излучает ауру
Регистрация: 19.02.2010
Сообщений: 98
Популярность: 650
Сказал(а) спасибо: 23
Поблагодарили 150 раз(а) в 45 сообщениях
Отправить сообщение для rufat2005 с помощью ICQ Отправить сообщение для rufat2005 с помощью Skype™
 
По умолчанию Re: Ингейм работа с чатом

понять не могу систему работы с чатом.

когда читаю чат




Код:
    
ReadProcessMemory (hProcess,  Pointer($B53E9C), @ChatLen, sizeof(ChatLen), rw);
if (ChatLen > 0)and (ChatLen >chat) then
  begin
  for strNo :=chat to ChatLen - 1 do
  begin
    start_addr:=getDWORD($B53E90);
    addr:=getDWORD(start_addr+$1C*strNo);
    addr:=getDWORD(addr+$8);
    ss:= getSTRING(addr,256);
    memo2.Lines.add(ss);
  end;
  end;
  chat :=ChatLen;
то читает только первое сообщение, т.е. когда переменная StrNo=0

а когда

Код:
   
ReadProcessMemory (hProcess,  Pointer($B53E9C), @ChatLen, sizeof(ChatLen), rw); 
if (ChatLen > 0)and (ChatLen >chat) then
  begin
  for strNo :=chat to ChatLen - 1 do
  begin
    start_addr:=getDWORD($B53E90);
//    addr:=getDWORD(start_addr+$1C*strNo);
n:=1+StrNo*7;
    addr:=getDWORD(start_addr+$8*n);
    ss:= getSTRING(addr,256);
    memo2.Lines.add(ss);
  end;
  end;
  chat :=ChatLen;
то читает сообщении но при этом пропуская по одному сообщению..
Подскажите где ошибка?

Код:
    
{==========================================|
|          Читаем DWORD                    |
|==========================================}
function getDWORD(data: dword): dword;
var
  rw: dword;
begin
  if Connected then
    begin
      ReadProcessMemory(hProcess,ptr(data),@Result,sizeof(Result),rw);
    end;
end;

{==========================================|
|           Читаем строку по адресу        |
|==========================================}
function getSTRING(ReadAddress, SizeBytes: DWORD): string;
var
  str: array[0..255] of WideChar;
  rw: dword;
begin
  ReadProcessMemory(hProcess,Pointer(ReadAddress),@str,SizeBytes,rw);
  Result:= str;
end;
________________
PWA for PWPVP
Автор программы PwRuf - Bot и PwRuf - Crafter

Последний раз редактировалось rufat2005; 19.01.2013 в 06:05.
  Ответить с цитированием
Старый 19.01.2013, 21:35   #9
 Разведчик
Аватар для Hilling
 
Hilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личность
Регистрация: 05.09.2010
Сообщений: 32
Популярность: 1182
Сказал(а) спасибо: 38
Поблагодарили 12 раз(а) в 10 сообщениях
 
По умолчанию Re: Ингейм работа с чатом

VeTaL_UA, спасибо, получилось.
Опирался еще на код из этой темы: http://zhyk.ru/forum/showthread.php?t=342418
Но "перевод" функции дельфи очень помог.

Цитата:
Сообщение от rufat2005Посмотреть сообщение

то читает только первое сообщение, т.е. когда переменная StrNo=0

Попробуй "залпом" прочитать

Типа такого:

Код:
ReadProcessMemory(hProcess, ptr(start_addr + ((StrNo * $1C) + $8)), @addr, sizeof(addr), BytesCountOfRead);

Последний раз редактировалось Hilling; 19.01.2013 в 21:41.
  Ответить с цитированием
Старый 20.01.2013, 04:32   #10
-= Мастер Света =-
 Пехотинец
Аватар для rufat2005
 
rufat2005 излучает ауруrufat2005 излучает ауруrufat2005 излучает ауруrufat2005 излучает ауруrufat2005 излучает ауруrufat2005 излучает ауру
Регистрация: 19.02.2010
Сообщений: 98
Популярность: 650
Сказал(а) спасибо: 23
Поблагодарили 150 раз(а) в 45 сообщениях
Отправить сообщение для rufat2005 с помощью ICQ Отправить сообщение для rufat2005 с помощью Skype™
 
По умолчанию Re: Ингейм работа с чатом

Цитата:
Сообщение от HillingПосмотреть сообщение
VeTaL_UA, спасибо, получилось.
Опирался еще на код из этой темы: http://zhyk.ru/forum/showthread.php?t=342418
Но "перевод" функции дельфи очень помог.



Попробуй "залпом" прочитать

Типа такого:

Код:
ReadProcessMemory(hProcess, ptr(start_addr + ((StrNo * $1C) + $8)), @addr, sizeof(addr), BytesCountOfRead);

спасибо получилось!
________________
PWA for PWPVP
Автор программы PwRuf - Bot и PwRuf - Crafter
  Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Куплю] Акк с батчатом Mstero World of Tanks 0 27.07.2012 03:45
Помогите разобраться в ингейм Gun31 Общение и обсуждение, архив Lineage 2 14 28.01.2010 21:39

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 20:09.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net