Register for your free account! | Forgot your password?

Go Back   elitepvpers > General Gaming > General Gaming Discussion
You last visited: Today at 13:49

  • Please register to post and access all features, it's quick, easy and FREE!

 

Mausklick zum Looten simulieren für Bot

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Jan 2007
Posts: 126
Received Thanks: 83
Mausklick zum Looten simulieren für Bot

ACHTUNG WALL OF TEXT
nur zu empfehlen wenn man lesen kann...

Ich möchte das mein kleiner Konsolenbot das Looten *lernt*. Dabei habe ich leider ein Problem damit die Mausklicks zu simulieren. Egal was ich mache, Runes of Magic ignoriert die Mausklicks einfach.

SendInput() oder mouse_event() will ich nicht verwenden, weil ich möchte das mein Bot auch funktioniert wenn ein anderes Fenster ontop ist oder den Fokus hat. Es bleibt also nur SendMessage() und PostMessage().

SendMessage() verwende ich bereits (wie man im Code auch sieht) um den Charakter zu bewegen. Nachdem das Bewegen des Charakters mit der Taste 'W' wunderbar funktioniert hat wollte ich SendMessage() dazu verwenden Mausklicks fürs Looten zu simulieren.

Ich habe mir mit Spy++ angeschaut welche Nachrichten bei einem *echten* Mausklick versendet werden:


Soweit ich weiß bedeutet das P oder S vor der Message:
S -> Nachricht wurde mit SendMessage() verschickt
P -> Nachricht wurde mit PostMessage() verschickt
R -> systeminterne Message

Als dritten Paramter habe ich MK_LMUTTON und 0 getestet -> keine Reaktion.
Dann habe ich es mit einem Sleep zwischen dem *Drücken* und *Loslassen* der Maustaste probiert ... obwohl das eigentlich mit SendMessage komplett Sinnlos sein dürfte weil die Fkt. synchron zu MsgProzedur abläuft ...-> keine Reaktion auf den simulierten Klick.

Ich habe mit Spy++ auch überprüft ob die Messages bei RoM ankommen, sie tun es ... das Spiel sollte also darauf reagiern ...

*ratlos*

Kann es sein das es nicht funktionert weil DirectX verwendet wird? ... das umgeht meines wissens die WinAPI um die Latenz klein zu halten. Nur ich habe keine Ahnung wie man für Direct Input (oder wie das API von Direct X auch immer heißt...) simuliert...

PS: Das handle ist 100% richtig, weil simulierte Tasteneingaben problemlos funktionieren.

kleines Codesnippet zum Looten von Monstern:
Code:
else if (target.health<=0)					// Wenn Ziel Health <= 0 looten!
{
	SetAngle(player.x, player.z, target.x, target.z);	// Spieler zum Ziel ausrichten
	while (GetDistance(player.x, player.z, target.x, target.z) > 4.0f)// Solange die Entfernung zwischen Spieler...
	{													// ...und Ziel > 4 ist bewege Spieler in Richtung Ziel
		memory.Read(playerbase, player);				// update playerdata
		if (player.targetptr==0)						// do we still have a target?
			break;
		memory.Read(player.targetptr, target);			// update targetdata
		SetAngle(player.x, player.z, target.x, target.z);// Spieler zum Ziel ausrichten
		SendMessage(memory.hwnd, WM_KEYDOWN, 'W', 0);	// start moving
	}
	// Der Spieler steht nun direkt im Ziel
	SendMessage(memory.hwnd, WM_KEYUP, 'W', 0);			// stop moving

	/*
	SetCursorPos(960,750);
	SendMessage(memory.hwnd, WM_LBUTTONDOWN, MK_LBUTTON, (LPARAM)MAKELPARAM(960, 750));
	Sleep(400);
	SendMessage(memory.hwnd, WM_LBUTTONUP, (WPARAM)0, (LPARAM)MAKELPARAM(960, 750));
	*/
	cout << "loot ..." << endl;
}



run32.dll is offline  
Old   #2
 
elite*gold: 271
Join Date: Mar 2008
Posts: 9,462
Received Thanks: 2,082
es gibt n addon womit man automatisch looten kann verbinde doch die benutzung deines bots mit diesem addon das addon findeste im offi forum "QuickLoot" oder "UberFlex Combat System" eins von den beiden wars


Mark- is offline  
Old   #3
 
elite*gold: 0
Join Date: Jan 2007
Posts: 126
Received Thanks: 83
Ich werde es mir anschauen, danke.

edit:
Also Quickloot schiebt nur den Lootframe zum Cursor und andere Spielereien. Looten muss man immer noch selber.

Das "UberFlex AutoCombat System" (behinderter Name... *doh*) habe ich getestet sowohl mit dt. und englischem Client - bei mir lootet er nicht. Das Addon sieht für mich so aus als wäre es nur zum Kämpfen/Buffen gemacht. Ich kann auch keine Optionen fürs Looten finden. Trotzdem steht bei Curse in der todo-list:
*add: An option to switch-off the loot action at the end.
... also müsste es doch eine Möglichkeit geben dem zu sagen er soll looten.

Aber mal ganz abgesehen von den Addons wollte ich eigentlich eine Lösung für C++. Selbst wenn das mit so einem Addon funktionert - Addons die zur Automatisierung dienen sind immer ein enormes zusätzliches Sicherheitsrisiko für den Account. Ich erinnere nur mal an Pirox AutoIT Battleground-Bot für WoW. Der Bot hatte auch ein Addon benutzt und ganz plötzlich waren eines Tages ziemlich viele Accounts gebannt...

Also irgendwelche anderen Vorschläge wie ich das Looten hinbekommen - mal abgesehen von Addons ...?
run32.dll is offline  
Old   #4
 
elite*gold: 0
Join Date: Nov 2005
Posts: 292
Received Thanks: 2
sourcecode zwegs autoloot

könntest du deinen sourcecode uppen und mir die url zur verfügung stellen,,, code jetz 5 jahre c ,,, meist beruflich,,, ich würde mal reinschauen in deinen code und dir das einbauen


KoyTheOne is offline  
Old   #5
 
elite*gold: 0
Join Date: Jan 2007
Posts: 126
Received Thanks: 83
Müsstest eine PM von mir haben mit URL und Passwort.

Ich habe immer mehr die Vermutung das DirectX dahinter steckt, weil laut Spy++ massig WM_INPUT Messages versendet werden mit irgendwelches kryptischen Rohdaten.
run32.dll is offline  
Old   #6
 
elite*gold: 0
Join Date: Apr 2007
Posts: 73
Received Thanks: 14


versuch das mal, benutze das zusammen mit dem bot, den ich laufen lasse.


madadayo is offline  
Reply



« Previous Thread | Next Thread »

Similar Threads
64 bit simulieren?
gibt es eine möglichkeit auf 32bit 64bit zu simulieren? oder gibt es einen Virtuellen PC der ein 64bit system hat? ;) (von microsoft das 64bit ding...
12 Replies - S4 League
mit c# tastendruck simulieren
hallo leute, hab ein kleines programm geschrieben welches einen tasendruck simuliert. ich wollte das für metin2 benutzen, umso die fertigkeiten...
9 Replies - .NET Languages
Raid simulieren ?
Hallo kennt jemand ein Addon das einen Raid simuliert um alle Frames einzustellen ?
7 Replies - WoW Addons
Tastatur simulieren
Hallo, ich suche ein kleine Programm was mir ermöglicht meine Tastatur zu simulieren. Also ich benötige nur Return und pfeiltasten ^^. Wenn...
2 Replies - Ragnarok Online
DVD laufwerk simulieren?
Hallo, kennt wer zufällig nen programm womit man ein DVD laufwerk simulieren kann?
3 Replies - Technical Support



All times are GMT +2. The time now is 13:49.


Powered by vBulletin®
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.

Support | Contact Us | FAQ | Advertising | Privacy Policy
Copyright ©2017 elitepvpers All Rights Reserved.