Register for your free account! | Forgot your password?

Go Back   elitepvpers › Shooter › S4 League
You last visited: Today at 16:15

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

Advertisement



AutoIT]Values Suchen lassen?

Discussion on AutoIT]Values Suchen lassen? within the S4 League forum part of the Shooter category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Aug 2010
Posts: 462
Received Thanks: 1,618
AutoIT]Values Suchen lassen?

HI,
geht das, dass AutoIT nach der texture ... in S4 league sucht und alles was dann kommt in etwas anderes umendert in 1 z.B ?
Also nicht so wie jetzt das man die adresse bracuuht sondern einfach

nach 1 suchen lassen
alles was er findet zu 2 ändern
♠As♠ is offline  
Old   #2
 
Rorc's Avatar
 
elite*gold: 113
The Black Market: 133/2/0
Join Date: Dec 2009
Posts: 16,685
Received Thanks: 4,451
Quote:
Originally Posted by mastermann22997 View Post
kp
Das ist purer Spamm und wird daher #reported

B2t: Ich glaube mit AutoIT ist dies nciht möglich, aber mit c++ usw sollte es gehen...
Rorc is offline  
Old   #3


 
Al Kappaccino's Avatar
 
elite*gold: 179
Join Date: Oct 2009
Posts: 7,853
Received Thanks: 8,560
Ja überleg doch mal, was AutoIT machen kann bzw. welche Befehle dieser Noob-Sprache zur verfügung stehen...
Was du willst ist das gleiche wie eine Memory Search Engine und ist mit AutoIT sicher nicht/kaum machbar. Selbst wenn man es über DLL Call oä. versucht wird es doch an der extrem langsamen VM Ware scheitern, selbst bei VB.Net ist es schwer das Teil flüssig laufen zu lassen, mit C++ ist es nicht anders, man muss eben überlegen wie man da ran geht
Al Kappaccino is offline  
Old   #4
 
elite*gold: 0
Join Date: Aug 2010
Posts: 462
Received Thanks: 1,618
Wüsstest du wie das geht ?
♠As♠ is offline  
Old   #5
 
PenGuin :O's Avatar
 
elite*gold: 2
Join Date: Mar 2008
Posts: 1,778
Received Thanks: 1,222
Es ist bedingt möglich:

Code:
;==================================================================================
; Function:         _MemoryScan($ah_Handle, $pattern [, $after[, $iv_addrStart, [$iv_addrEnd]]])
; Description:      Finds the address of the first occurance of a pattern in a process.
; Parameter(s):     $ah_Handle - An array containing the Dll handle and the handle
;                                of the open process as returned by _MemoryOpen().
;                   $pattern - The pattern you want to find. Provide the pattern
;                              as a String of hex values. You may use the '.' as wildcard.
;                              Any other character as '0123456789ABCDEFabcdef.' is ignored.
;                              Example: "55 8B .. 83"
;                   $after - (optional) Set to FALSE by default.
;                            If set to TRUE, the method will return the address
;                            after the pattern, else the method returns the address
;                            of the pattern itself.
;                   $iv_addrStart - (optional) Set to 0x00400000 by default.
;                                   This is the address where the method begins to scan
;                                   for the pattern. It must be in hex format (0x00000000).
;                   $iv_addrEnd - (optional) Set to 0X00FFFFFF by default.
;                                 This is the address where the method stops to scan
;                                 for the pattern. It must be in hex format (0x00000000).
; Requirement(s):   None.
; Return Value(s):  On Success - Returns the address of the first occurance of the pattern
;                                ($after = FALSE) or the address after the first occurance
;                                of the pattern ($after = TRUE). The address is in
;                                hexadecimal format.
;                   On Failure - Returns -1
;                   @Error - 0 = No error.
;                            1 = Invalid $ah_Handle.
;                            2 = Invalid $pattern.
; Author(s):        Luzifer42
; Note(s):          The default scan range will be completed in less than one second.
;==================================================================================

Func _MemoryScan($ah_Handle, $pattern, $after=false, $iv_addrStart=0x00400000, $iv_addrEnd=0X00FFFFFF, $step=51200)
	If Not IsArray($ah_Handle) Then
		SetError(1)
        Return -1
	EndIf
	$pattern=StringRegExpReplace($pattern, "[^0123456789ABCDEFabcdef.]", "")
	IF StringLen($pattern)=0 Then
		SetError(2)
        Return -2
	EndIf
	For $addr=$iv_addrStart To $iv_addrEnd Step $step-(StringLen($pattern)/2)
		StringRegExp(_MemoryRead($addr, $ah_Handle, "byte[" & $step & "]"), $pattern, 1, 2)
		If Not @Error Then
			If $after Then
				return StringFormat("0x%.8X", $addr+((@Extended-2)/2))
			Else
				return StringFormat("0x%.8X", $addr+((@Extended-StringLen($pattern)-2)/2))
			EndIf
		EndIf
	Next
	Return -3
EndFunc

über die Performance in AutoIt lässt sich streiten, fakt ist: Es ist ziemlich lahm.
PenGuin :O is offline  
Old   #6


 
Al Kappaccino's Avatar
 
elite*gold: 179
Join Date: Oct 2009
Posts: 7,853
Received Thanks: 8,560
Sagen wir es so. Wenn du es schaffst, das ein AutoIT Prog (mithilfe von Fremderzeugenissen, ohne geht es einfach nicht) in einen Prozess eindringt und nach der Value 1 sucht wäre das ja schonmal grandious. Das Teil würde aber sicher erstmal 3 Jahre suchen bis es dann alle Adressen hat (Ausgenommen es zerfrists dein Ram und dein PC crasht) und diese dann alle ändert was dank top VM Ware sicher nochmals 1 Jahr dauert.
Von daher würde ich es lassen. Und ne richtige Sprache brauchste auch nicht anfangen ;o
Al Kappaccino is offline  
Old   #7


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,908
Received Thanks: 25,415
Klar geht das auch in Autoit, es ist nur so beschissen lahm, das es einen nicht weiter bringt.
Das ganze nennt sich Pattern search und ist zwar einfach zu implementieren, aber es zu konfigurieren (range, genauigkeit) will gelernt sein.
Außerdem gibt es meist viele Ergebnisse, wovon man nur eins ändern darf, da müsste es dann wie bei CE ein Next Scan geben, was aber bei nem Trainer sinnfrei ist.
Für Strings sollte das aber ganz gut möglich sein, ich könnte eine kleine Dll schreiben, die eine Suchfunktion bietet, die du dann per Autoit aufrufen könntest

edit:
ups grad die eingefügte lib von pinguin gesehen, da ist ja keine mehr von mir nötig.
Quote:
Sagen wir es so. Wenn du es schaffst, das ein AutoIT Prog (mithilfe von Fremderzeugenissen, ohne geht es einfach nicht) in einen Prozess eindringt und nach der Value 1 sucht wäre das ja schonmal grandious. Das Teil würde aber sicher erstmal 3 Jahre suchen bis es dann alle Adressen hat (Ausgenommen es zerfrists dein Ram und dein PC crasht) und diese dann alle ändert was dank top VM Ware sicher nochmals 1 Jahr dauert.
Von daher würde ich es lassen. Und ne richtige Sprache brauchste auch nicht anfangen ;o
Das ist doch völliger Blödsinn.
CE dringt auch nicht ein, sondern sucht von außen, auch wenn es natürlich im Prozess einen kleinen Ticken schneller ginge.
Autoit selbst wird von ner vom ausgeführt, aber Dlls, werden ganz normal vom Prozessor ausgeführt, das ist nicht lahm.
MrSm!th is offline  
Old   #8
 
elite*gold: 0
Join Date: Dec 2009
Posts: 1,622
Received Thanks: 2,070
Falsche Section.

Bitte verschiebt dass in die Autoit section
freehuntx is offline  
Old   #9
 
PenGuin :O's Avatar
 
elite*gold: 2
Join Date: Mar 2008
Posts: 1,778
Received Thanks: 1,222
Quote:
Originally Posted by MrSm!th View Post
Klar geht das auch in Autoit, es ist nur so beschissen lahm, das es einen nicht weiter bringt.
Das ganze nennt sich Pattern search und ist zwar einfach zu implementieren, aber es zu konfigurieren (range, genauigkeit) will gelernt sein.
Außerdem gibt es meist viele Ergebnisse, wovon man nur eins ändern darf, da müsste es dann wie bei CE ein Next Scan geben, was aber bei nem Trainer sinnfrei ist.
Für Strings sollte das aber ganz gut möglich sein, ich könnte eine kleine Dll schreiben, die eine Suchfunktion bietet, die du dann per Autoit aufrufen könntest

edit:
ups grad die eingefügte lib von pinguin gesehen, da ist ja keine mehr von mir nötig.

Das ist doch völliger Blödsinn.
CE dringt auch nicht ein, sondern sucht von außen, auch wenn es natürlich im Prozess einen kleinen Ticken schneller ginge.
Autoit selbst wird von ner vom ausgeführt, aber Dlls, werden ganz normal vom Prozessor ausgeführt, das ist nicht lahm.

Wenn magst, darfste für mich ne MemorySearch DLL coden ;O
PenGuin :O is offline  
Old   #10


 
Al Kappaccino's Avatar
 
elite*gold: 179
Join Date: Oct 2009
Posts: 7,853
Received Thanks: 8,560
Quote:
Originally Posted by MrSm!th View Post
Klar geht das auch in Autoit, es ist nur so beschissen lahm, das es einen nicht weiter bringt.
Das ganze nennt sich Pattern search und ist zwar einfach zu implementieren, aber es zu konfigurieren (range, genauigkeit) will gelernt sein.
Außerdem gibt es meist viele Ergebnisse, wovon man nur eins ändern darf, da müsste es dann wie bei CE ein Next Scan geben, was aber bei nem Trainer sinnfrei ist.
Für Strings sollte das aber ganz gut möglich sein, ich könnte eine kleine Dll schreiben, die eine Suchfunktion bietet, die du dann per Autoit aufrufen könntest

edit:
ups grad die eingefügte lib von pinguin gesehen, da ist ja keine mehr von mir nötig.

Das ist doch völliger Blödsinn.
CE dringt auch nicht ein, sondern sucht von außen, auch wenn es natürlich im Prozess einen kleinen Ticken schneller ginge.
Autoit selbst wird von ner vom ausgeführt, aber Dlls, werden ganz normal vom Prozessor ausgeführt, das ist nicht lahm.
Ja und? Es geht darum, es mit AutoIT zu realisieren und es wäre mir neu das man solche Dll´s mit AutoIT coden kann... Wenn du es nur über AutoIT laufen lässt geht einfach nix voran, dass weist du genauso gut wie ich...
Al Kappaccino is offline  
Old   #11
 
PenGuin :O's Avatar
 
elite*gold: 2
Join Date: Mar 2008
Posts: 1,778
Received Thanks: 1,222
@JakeFrost:
Quote:
Klar geht das auch in Autoit, es ist nur so beschissen lahm, das es einen nicht weiter bringt.
Das ganze nennt sich Pattern search und ist zwar einfach zu implementieren, aber es zu konfigurieren (range, genauigkeit) will gelernt sein.
Außerdem geht es mit AutoIt o_O
Einfach jede Adresse nach der Value absuchen und ggf. in ein Array einfügen, wenn die Value passt.
Zeit ist ja egal.

Ergo:
Ja es geht.
Performancetechnisch jedoch ziemlich schlecht.
PenGuin :O is offline  
Old   #12


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,908
Received Thanks: 25,415
Quote:
Originally Posted by JakeFrost77 View Post
Ja und? Es geht darum, es mit AutoIT zu realisieren und es wäre mir neu das man solche Dll´s mit AutoIT coden kann... Wenn du es nur über AutoIT laufen lässt geht einfach nix voran, dass weist du genauso gut wie ich...
Du sagtest aber, dass es selbst mit DllCall lahm ginge, wenn ich mich Recht entsinne und das wäre einfach falsch.
Und auch in Autoit könnte man ein paar Tuning Möglichkeiten nutzen, um den Algorithmus zu optimieren.
Wenn man es so eng betrachtet, lässt sich fast gar nichts alleine in Autoit realisieren, weil für vieles irgendwelche DllCalls gemacht werden
MrSm!th is offline  
Old   #13


 
Al Kappaccino's Avatar
 
elite*gold: 179
Join Date: Oct 2009
Posts: 7,853
Received Thanks: 8,560
Quote:
Originally Posted by MrSm!th View Post
Du sagtest aber, dass es selbst mit DllCall lahm ginge, wenn ich mich Recht entsinne und das wäre einfach falsch.
Und auch in Autoit könnte man ein paar Tuning Möglichkeiten nutzen, um den Algorithmus zu optimieren.
Wenn man es so eng betrachtet, lässt sich fast gar nichts alleine in Autoit realisieren, weil für vieles irgendwelche DllCalls gemacht werden
Ja das Stimmt. Wenn man sowieso in der Lage ist sich solche Dll´s zu machen, würde man gar nicht erst den Aufwand betreiben sowas über AutoIT zu benutzen^^
Al Kappaccino is offline  
Old   #14


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,908
Received Thanks: 25,415
Naja, wie gesagt, ich könnte so eine Dll bereitstellen, wenn das genug wollen.

Aber auch wen Autoit lahm ist, man kann ja die Range auf eine gewisse Größe reduzieren, man muss ja nicht den ganzen Client durchsuchen.
Und Fichte hatte mal, als es noch möglich war, nen Adressfinder für die Dmg Adressen in Autoit geschrieben, der brauchte auch nur ein paar Sekunden und hat im ganzen Client gesucht.
MrSm!th is offline  
Old   #15
 
elite*gold: 0
Join Date: Dec 2009
Posts: 1,622
Received Thanks: 2,070
_SearchMemory(0x00C00000,0x00F00000,$Handle,"actor _default_hp_max",$Bytes)

musst halt die function _searchmemory suchen hab das von pinguin
freehuntx is offline  
Reply


Similar Threads Similar Threads
Metin2 AutoIT wieder funzen lassen?
09/14/2010 - Metin2 - 8 Replies
hay Leute, viele von euch machen noch AutoIT bots für Metin2DE. Bei mir funktionieren meine AutoIT skripts aber nicht auf Metin2DE wie kriegt ihr das wieder zum laufen? gibbet nen TuT dafür? hab nen Jahr AutoIT erfahrung und möchte auch gern ein paar sachen Pup machen^^ plss antworten =)
D2NT nach ip suchen lassen?
06/01/2010 - Diablo 2 - 6 Replies
kann man den bot eingentlich so einstellen, das er bei einer bestimmten ip in die er joint drin bleibt?
Values suchen?
05/22/2010 - S4 League - 24 Replies
€: Ich meine natürlich Adressen (Cutspeed, etc.) Hallo, ich hätte da eine Frage und zwar: Ich habe vor eigene Trainer zu basteln, einfach um diese dummen Leecher Status wegzubekommen^^ Der Nachteil dabei ist aber, dass ich nicht weiß, wie ich Adressen finden kann. Ich möchte diese nicht einfach von anderen klauen, dass würde diesen nervigen Status auch nicht entfernen. Nun hab ich auch gelesen, dass man ja mit Hotkeysuspend die CE öffnen kann und dann in S4 suchen kann. Nur ich kann ja...
[FRAGE] AutoIt Zeile suchen + ändern
02/06/2010 - AutoIt - 9 Replies
Hi, mal eine Frage, ich möchte nen Bot für Metin2 schreiben naja eigentlich ziemlich egal. Dieser soll di metin2.cfg anpassen. Jetzt möchte ich die beiden Zeilen: WIDTH 1440 HEIGHT 838
Schleifen Paralel Laufen lassen (AutoIt)
06/06/2009 - AutoIt - 8 Replies
hi wollte mal fragen ob man mit Autoit 2 oder mher schleifen paralel laufen lassen kann wenn aj wie???



All times are GMT +2. The time now is 16:17.


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

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.