|
You last visited: Today at 14:11
Advertisement
[How To]Metin2.DE locale_de.addr öffnen
Discussion on [How To]Metin2.DE locale_de.addr öffnen within the Metin2 Guides & Templates forum part of the Metin2 category.
02/16/2010, 20:21
|
#1
|
elite*gold: 1
Join Date: Dec 2008
Posts: 4,066
Received Thanks: 1,726
|
[How To]Metin2.DE locale_de.addr öffnen
Moin moin.
Da ich sah das der ersteller der M2 File Archivers momentan daran arbeitet die locale_de.addr zu öffnen, wollte ich mal helfen, bzw das Problem lösen.
Also...
Die locale_de.addr ist mit der Python funktion cPickle.dump(file,output) gepackt. Um diese zu entpacken müsst ihr sie eig nur auslesen xD
Bzw tut das der Client für uns bereits. Also öffnet die Metin2.DE serverinfo.py und geht an diese Stelle:
if locale.IsEUROPE():
name = app.GetLocalePath().replace("/", "_") + ".addr"
path = os.sep.join(("pack", name))
if os.access(path, os.R_OK):
print "load_locale_addr:", path
data = app.LoadLocaleAddr(path)
import cPickle
import cStringIO
info = cPickle.load(cStringIO.StringIO(data))
STATE_NONE = "..."
STATE_DICT = {
0 : "....",
1 : "NORM",
2 : "BUSY",
3 : "FULL"
}
REGION_NAME_DICT = info["NAME"]
REGION_AUTH_SERVER_DICT = info["AUTHADDR"]
REGION_DICT = info["GAMEADDR"]
MARKADDR_DICT = info["MARKADDR"]
Ist ganz unten.
Fügt nach "info = cPickle.load(cStringIO.StringIO(data))" einfach das an:
dump = open('dump.txt', 'w')
s = str(info)
dump.write(s)
dump.close()
if locale.IsEUROPE():
name = app.GetLocalePath().replace("/", "_") + ".addr"
path = os.sep.join(("pack", name))
if os.access(path, os.R_OK):
print "load_locale_addr:", path
data = app.LoadLocaleAddr(path)
import cPickle
import cStringIO
info = cPickle.load(cStringIO.StringIO(data))
dump = open('dump.txt', 'w')
s = str(info)
dump.write(s)
dump.close()
STATE_NONE = "..."
STATE_DICT = {
0 : "....",
1 : "NORM",
2 : "BUSY",
3 : "FULL"
}
REGION_NAME_DICT = info["NAME"]
REGION_AUTH_SERVER_DICT = info["AUTHADDR"]
REGION_DICT = info["GAMEADDR"]
MARKADDR_DICT = info["MARKADDR"]
Wenn ihr dann wollt, dass er nurnoch aus der dump.txt die Namen usw. ausliest ändert die serverinfo so:
if locale.IsEUROPE():
name = app.GetLocalePath().replace("/", "_") + ".addr"
path = os.sep.join(("pack", name))
if os.access(path, os.R_OK):
print "load_locale_addr:", path
data = app.LoadLocaleAddr(path)
import cPickle
import cStringIO
s = open('dump.txt', 'r')
s.read() = lol
info = str(lol)
s.close()
STATE_NONE = "..."
STATE_DICT = {
0 : "....",
1 : "NORM",
2 : "BUSY",
3 : "FULL"
}
REGION_NAME_DICT = info["NAME"]
REGION_AUTH_SERVER_DICT = info["AUTHADDR"]
REGION_DICT = info["GAMEADDR"]
MARKADDR_DICT = info["MARKADDR"]
Sollte soweit eig alles funzen. Nur bei dem perm laden bin ich mit nit sicher.
MfG. Tannenbaum
Edit: Das auslesen der dump.txt beziehungsweise das der Client die dump.txt als locale_de.addr funzt grade nicht. Muss ich mir wohl morgen einen JSON Parser besorgen bevor das wieder geht ._.
|
|
|
02/16/2010, 20:23
|
#2
|
elite*gold: 0
Join Date: Dec 2009
Posts: 1,525
Received Thanks: 383
|
Top! Das hab ich gesucht.
|
|
|
02/17/2010, 14:46
|
#3
|
elite*gold: 0
Join Date: Dec 2009
Posts: 279
Received Thanks: 572
|
very.very not thanks.
you dont recive;
dont edit. and dont works !
|
|
|
02/17/2010, 16:10
|
#4
|
elite*gold: 1
Join Date: Dec 2008
Posts: 4,066
Received Thanks: 1,726
|
Quote:
Originally Posted by мзтіи2
very.very not thanks.
you dont recive;
dont edit. and dont works !
|
If you means. And you also seems to know all the new things on elitepvpers, so go away...
Zum Thema laden der dump.txt ich setze mich mal ran :/
|
|
|
02/17/2010, 16:46
|
#5
|
elite*gold: 0
Join Date: Aug 2008
Posts: 465
Received Thanks: 224
|
Quote:
Originally Posted by Tanhel
Moin moin.
Da ich sah das der ersteller der M2 File Archivers momentan daran arbeitet die locale_de.addr zu öffnen, wollte ich mal helfen, bzw das Problem lösen.
Also...
Die locale_de.addr ist mit der Python funktion cPickle.dump(file,output) gepackt. Um diese zu entpacken müsst ihr sie eig nur auslesen xD
Bzw tut das der Client für uns bereits. Also öffnet die Metin2.DE serverinfo.py und geht an diese Stelle:
Ist ganz unten.
Fügt nach "info = cPickle.load(cStringIO.StringIO(data))" einfach das an:
dump = open('dump.txt', 'w')
s = str(info)
dump.write(s)
dump.close()
Wenn ihr dann wollt, dass er nurnoch aus der dump.txt die Namen usw. ausliest ändert die serverinfo so:
Sollte soweit eig alles funzen. Nur bei dem perm laden bin ich mit nit sicher.
MfG. Tannenbaum
Edit: Das auslesen der dump.txt beziehungsweise das der Client die dump.txt als locale_de.addr funzt grade nicht. Muss ich mir wohl morgen einen JSON Parser besorgen bevor das wieder geht ._.
|
wenn man jetzt also theoretisch eine datei im klienten finden würde,
die informationen aus metin2.bin ausließt, könnte man von ohr auch
einen dump machen udn eine eigene metin2.bin schreiben?
weil man ja dann den source hat ^^
|
|
|
02/17/2010, 17:01
|
#6
|
elite*gold: 1
Join Date: Dec 2008
Posts: 4,066
Received Thanks: 1,726
|
Quote:
Originally Posted by MrCrackR
wenn man jetzt also theoretisch eine datei im klienten finden würde,
die informationen aus metin2.bin ausließt, könnte man von ohr auch
einen dump machen udn eine eigene metin2.bin schreiben?
weil man ja dann den source hat ^^
|
Eigentlich... überhaupt nicht. Die serverinfo.py von metin2 2009 entpackt die locale_de.addr selbstständig.... Also da wurde eigentlich nichts an der .bin geändert. Jedoch kann man die bin mit Virustotal analysieren, den packer rausbekommen, das cracken und mit IDA betrachten. Außerdem könnte man es mit dem IDA Pro Dissambler auch dekompilieren
|
|
|
02/27/2010, 08:26
|
#7
|
elite*gold: 0
Join Date: Jan 2009
Posts: 232
Received Thanks: 26
|
Könnte man das nicht einfach weg lassen und anstatt
REGION_NAME_DICT = info["NAME"]
REGION_AUTH_SERVER_DICT = info["AUTHADDR"]
REGION_DICT = info["GAMEADDR"]
MARKADDR_DICT = info["MARKADDR"]
das so wie bei den anderen Ländern schreiben?
|
|
|
02/27/2010, 09:13
|
#8
|
elite*gold: 1
Join Date: Dec 2008
Posts: 4,066
Received Thanks: 1,726
|
Quote:
Originally Posted by 113puma
Könnte man das nicht einfach weg lassen und anstatt
REGION_NAME_DICT = info["NAME"]
REGION_AUTH_SERVER_DICT = info["AUTHADDR"]
REGION_DICT = info["GAMEADDR"]
MARKADDR_DICT = info["MARKADDR"]
das so wie bei den anderen Ländern schreiben?
|
***. Dazu mein locale_de.addr extractor. Wollte nur keinen Autoitbot schreiben der es dann ins herkömmliche Format umwandelt
|
|
|
02/27/2010, 19:16
|
#9
|
elite*gold: 0
Join Date: Jan 2009
Posts: 232
Received Thanks: 26
|
Hm habs ausprobiert. Es passiert gar nichts bei einloggen.
[19:14] metin2 - Kopie.exe - ***.***.***.***:11002 open
[19:14] metin2 - Kopie.exe - ***.***.***.***:11002 close, 111 bytes sent, 43 bytes received
Mehr Daten Austausch wird auch nicht angezeigt
|
|
|
02/27/2010, 19:50
|
#10
|
elite*gold: 0
Join Date: Mar 2009
Posts: 162
Received Thanks: 10
|
Das passiert wenn man auf nem pserver connecten will
ich häng schon die ganze zeit an dem Problem, hab schon was gefunden, aber naja schwer...
|
|
|
02/27/2010, 20:20
|
#11
|
elite*gold: 0
Join Date: Jan 2009
Posts: 232
Received Thanks: 26
|
Liegts an der bin?
|
|
|
02/27/2010, 20:26
|
#12
|
elite*gold: 255
Join Date: Nov 2009
Posts: 2,900
Received Thanks: 1,408
|
Was bringt es, dass man diese Datei öffnen/auslesen kann? :/
|
|
|
02/27/2010, 20:28
|
#13
|
elite*gold: 0
Join Date: Mar 2009
Posts: 162
Received Thanks: 10
|
Ja es liegt 100%tig an der bin, die ist mit Aspack gepackt, ich bekomm das ding nicht decryptet
|
|
|
02/27/2010, 21:23
|
#14
|
elite*gold: 1
Join Date: Dec 2008
Posts: 4,066
Received Thanks: 1,726
|
Quote:
Originally Posted by D4rkEffect
Das passiert wenn man auf nem pserver connecten will
ich häng schon die ganze zeit an dem Problem, hab schon was gefunden, aber naja schwer...
|
Naja man könnte n AutoIt Bot scripten, welcher die serverinfo.py ändert, aber das mit dem connecten auf nen PServer geht nicht, da in der .bin ein Check drinne ist, ob der zu connectende Server ein Offi ist.
Da ich die nen gerippten C-Source habe probier ich grade im Assembler Code den Servercheck mit nem Jump (OllyDBG x3) zu umgehen. Jedoch währe jemand der sich mit dem ganzen Zeug auskennt nicht schlecht.
|
|
|
02/27/2010, 22:53
|
#15
|
elite*gold: 0
Join Date: Mar 2009
Posts: 162
Received Thanks: 10
|
Schonmal im VPC geschaut nachdem man mit dem DE Client versucht hat, zu connecten?
|
|
|
Similar Threads
|
Locale_de.addr
05/16/2010 - Metin2 Private Server - 6 Replies
Hey İch Will Lvl anzeig pack bitte
Beispiel
Lv99 DeltaTR1 wie M2 DE Wie Kann ich das machen bitte sagt es
oder einfach pack machen fuhr mich bitte
Dont Reported me pLs :
|
All times are GMT +2. The time now is 14:11.
|
|