|
You last visited: Today at 01:15
Advertisement
[RELEASE + HOW TO] SequenceTable ändern
Discussion on [RELEASE + HOW TO] SequenceTable ändern within the Metin2 PServer Guides & Strategies forum part of the Metin2 Private Server category.
10/26/2013, 03:21
|
#1
|
elite*gold: 0
Join Date: Oct 2008
Posts: 1,637
Received Thanks: 1,119
|
[RELEASE + HOW TO] SequenceTable ändern
Da ich in einem Thread gesehen habe, dass das ja doch eine relativ unbekannte möglichkeit ist einen Client/die Serverfiles für andere unbrauchbar zu machen, gibts hier mal eine kleine Erklärung.
Information
Ich hab dazu auch ein passendes Tool geschrieben.
Damit könnt ihr euch difs für Client und Server erstellen die die SequenceTable patchen würden.
Die neue SequenceTable wird random generiert und in eine Datei 'sequences.bin' gespeichert, dass die gleichen Informationen auch weiter verwendet werden können. (Beim löschen wird einfach eine neue generiert )
Die zu patchenden Dateien einfach drauf ziehen.
Technischer Nerdkram
Technisch ist da jetzt nicht so viel wissenswertes dabei, der Client sendet pro Packet immer nur 1 Byte aus der Tabelle und der Server gleicht das mit seiner ab. Wenn die Table einmal durch ist wird von vorne angefangen. Wenn der Client einen falschen Wert sendet, dann kicked der Server den Client und gibt einen recht bekannten Fehler aus.
Aus diesem Grund ist es wichtig, dass man beide Seiten ändert, also Server UND Client.
Die noch nerdigere Suche
Wie man die SequenceTable finde ist prinzipiell recht einfach.
Man suche eine beliebige Packet Funktion.
Innerhalb dieser Funktion sucht man dann (wahrscheinlich) einzige Funktion mit der thiscall calling convention.
Dort wird man in den meisten Fällen einen kleinen Block finden, der nach dem erfolgreichen Senden eines Packets ausgeführt wird. Da wird dann auch die Funktion aufgerufen, die das Sequence Byte senden soll.
Man kann jetzt schön sehen, wie geprüft wird, ob der Sequence Mode aktiviert ist, der Index erhöht wird, geprüft wird ob er außerhalb der SequenceTable liegt usw. Der Check ob der Index außerhalb der SequenceTable liegt wird mit 2 Pointern vorgenommen, ein mal Start und Ende.
Man schaut also, welcher von welchem abgezogen wird und findet damit heraus, welcher der Start pointer ist. (ende - start = größe)
Da jetzt das Offset gefunden ist kann man da hin schauen, wo die SequenceTable geladen wird. In den Konstruktor der Klasse.
Wenn man dort ein wenig runter scrollt findet man als erstes ein memalloc mit 0x8000 Bytes und noch weiter unten dann ein memcpy mit 0x8000 Bytes in den neu allokierten Speicher von.. Na wer hats errate? Richtig, der SequenceTable.
Download
Als Passwort habe ich einfach mal yolopvp genommen <3
Edit:
Edit2:
Quote:
Originally Posted by Mr. 'Avenue™
Der patcht das ganze in 1-2 Sekunden
|
|
|
|
10/26/2013, 03:24
|
#2
|
elite*gold: 32
Join Date: Mar 2012
Posts: 6,717
Received Thanks: 2,737
|
Sehr, sehr nice. Danke dir!!
|
|
|
10/26/2013, 09:43
|
#3
|
elite*gold: 192
Join Date: Aug 2009
Posts: 5,797
Received Thanks: 3,141
|
Hübsche idee. Sieht gut aus.
Thanks for share
|
|
|
10/26/2013, 11:19
|
#4
|
elite*gold: 0
Join Date: Jan 2010
Posts: 328
Received Thanks: 435
|
Which client you are using?
In normal clients I can't see function tags. (sub_XXXXX)
|
|
|
10/26/2013, 11:21
|
#5
|
elite*gold: 0
Join Date: Oct 2008
Posts: 1,637
Received Thanks: 1,119
|
Ich bin ja mal gespannt wann die ersten rum meckern "This is not work" (Btw. dafuq? Welcher behinderte Kackspast schreibt so?)
Das ganze hat logischerweise keinen Sinn wenn man den Call zu der Check Funktion serverside ausnoppt.
Also bitte vorher dran denken
Edit:
I've renamed the functions by myself!
|
|
|
10/26/2013, 11:24
|
#6
|
elite*gold: 0
Join Date: Jan 2010
Posts: 328
Received Thanks: 435
|
Quote:
Originally Posted by HeavyHacker
Ich bin ja mal gespannt wann die ersten rum meckern "This is not work" (Btw. dafuq? Welcher behinderte Kackspast schreibt so?)
Das ganze hat logischerweise keinen Sinn wenn man den Call zu der Check Funktion serverside ausnoppt.
Also bitte vorher dran denken
Edit:
I've renamed the functions by myself!
|
Interesting, thanks again for idea
|
|
|
10/26/2013, 11:33
|
#7
|
elite*gold: 0
Join Date: Dec 2009
Posts: 113
Received Thanks: 44
|
Can you translate it to English please?
Kind Regards
|
|
|
10/26/2013, 11:43
|
#8
|
elite*gold: 0
Join Date: May 2013
Posts: 223
Received Thanks: 93
|
Funktioniert Perfekt!
Danke.
|
|
|
10/26/2013, 11:48
|
#9
|
elite*gold: 0
Join Date: Jan 2010
Posts: 328
Received Thanks: 435
|
An english post will be perfect.
|
|
|
10/26/2013, 12:45
|
#10
|
elite*gold: 222
Join Date: Oct 2012
Posts: 2,361
Received Thanks: 3,388
|
Sry, bin nicht grade der hellste...
Wie wendet man das jetzt genau an?
|
|
|
10/26/2013, 13:07
|
#11
|
elite*gold: 0
Join Date: May 2013
Posts: 223
Received Thanks: 93
|
Quote:
Originally Posted by Mr. 'Avenue™
Sry, bin nicht grade der hellste...
Wie wendet man das jetzt genau an?
|
Du musst einfach deine Game und deine Binary auf die "SequencePatcher.exe" ziehen. Du MUSST beide Dateien gleichzeitig draufziehen, da sonnst die Dif's verschieden sind!
|
|
|
10/26/2013, 13:23
|
#12
|
elite*gold: 222
Join Date: Oct 2012
Posts: 2,361
Received Thanks: 3,388
|
Quote:
Originally Posted by .Captor
Du musst einfach deine Game und deine Binary auf die "SequencePatcher.exe" ziehen. Du MUSST beide Dateien gleichzeitig draufziehen, da sonnst die Dif's verschieden sind!
|
Ach so, danke
Gehts mit jeder Binary/Game? (revision)
€dit: Wenn ich die Game/Binary dann raufgezogen habe, wirds automatisch geändert, oder muss ich da noch i.was machen?
|
|
|
10/26/2013, 13:59
|
#13
|
elite*gold: 0
Join Date: Nov 2011
Posts: 1,448
Received Thanks: 1,258
|
Super gut
Dankeschön!!
|
|
|
10/26/2013, 14:59
|
#14
|
elite*gold: 0
Join Date: Jan 2010
Posts: 328
Received Thanks: 435
|
Working fine, thanks.
This thing will do block Multihack etc. because bytes are changed GJ.
|
|
|
10/26/2013, 15:04
|
#15
|
elite*gold: 0
Join Date: Mar 2012
Posts: 646
Received Thanks: 696
|
Very Nice.
Mfg
|
|
|
|
|
Similar Threads
|
[Release]Namen Ändern
10/18/2012 - Flyff Hacks, Bots, Cheats, Exploits & Macros - 2 Replies
Hallo,
ich möchte euch heute mal vorstellen wie ihr euren namen ändern könnt wenn er euch nicht mehr gefällt.
Als erstes müsst ihr Cheatengine downloaden und installieren.
Wenn ihr das gemacht habt startet ihr Flyff.
Dann Wählt ihr den Char aus wo der Name geändert werden soll.
|
[Release]Ändern des Algorithmus
08/19/2012 - Metin2 PServer Guides & Strategies - 61 Replies
Hey,
da Alessa mich praktisch dazu zwingt, dieses Release zu machen, hab ich es nun gepostet.
PN:
http://i.epvpimg.com/NWQgh.jpg
Skype:
Ziemlich asozial von Alessa... Naja, muss sich jeder selbst eine eigene Meinung bilden.
|
[Release] Max-Löschlvl ändern
01/30/2011 - Metin2 PServer Guides & Strategies - 8 Replies
Huhu Community :)
hab' da noch keinen bestehenden Thread drüber gefunden und dachte mir, vllt. interessiert das jemanden..
Man kann ja normalerweise Charaktere nur bis lvl 70 löschen :)
Viele fragten mich schon, warum..
Naja
Hier die Lösung:
Ihr geht via FileZilla in den ordner
|
[LITTLE RELEASE]Waffenhaltun ändern
08/15/2010 - Metin2 PServer Guides & Strategies - 12 Replies
hallo lieeb Com,
heute zeige ich euch,
wie ihr die Waffenhaltung ändern könnt!
Es werden sicher schon vieel kennen,
aber da ich in der SuFu nichts gefunden habe,
release ich es ma,
damit es auch die kennen,
die es noch nicht kannten !
|
[Mini-Release]S4 Intro ändern
12/31/2009 - S4 League - 4 Replies
Moin elitepvpers,
ich wollte euch mal zeigen wie ihr das "S4 Starten" verändern könnt.
Ihr braucht:
S4 Leauge
Mp3 zu ogg converter -> download 4Musics MP3 to OGG Converter (nur zum musik verändern)
S4Resource ! Besorg euch diese , ihr werdet sie nicht von mir bekommen , ich will keine pms erhalten!
Ok startet den S4Resource und geht dann in resources und dort in intro Ordner findet ihr die "Intro Datein"
Diese könnt ihr nun exportieren ändern und wieder importieren ;)
|
All times are GMT +2. The time now is 01:15.
|
|