Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Metin2 > Metin2 Private Server > Metin2 PServer Guides & Strategies
You last visited: Today at 08:59

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

Advertisement



[How-To] Alle Mobs Original DE Like exp in unter 1 min.

Discussion on [How-To] Alle Mobs Original DE Like exp in unter 1 min. within the Metin2 PServer Guides & Strategies forum part of the Metin2 Private Server category.

Closed Thread
 
Old   #1
 
xCPx's Avatar
 
elite*gold: 20
Join Date: Jun 2011
Posts: 2,897
Received Thanks: 3,336
[How-To] Alle Mobs Original DE Like exp in unter 1 min.

Hey.
hab rgade nen witziges tool geschrieben mit dem ihr in unter 1 min die exp aller eurer Mobs auf die Exp wie DE sie hat einstellt:

Ihr braucht:

Putty bzw zugriff auf euren Server
Filezilla
Python (installier v2.2 oder 2.5 sind tested)



Also Ihr geht auf euren Root
und gebt ein:
PHP Code:
mysql -peuerpw --e="SELECT locale_name,vnum from player.mob_proto" > /usr/mob_proto 
mit enter bestätigen.

So nun ladet ihr die mob_proto (im pfad /usr/) runter auf euren Desktop.

Dort erstellt ihr zudem die datei: test.py

mit folgendem inhalt:

PHP Code:
import urllib
open("mob_proto""r")
a.readlines()
open("test.txt""w")
0
for c in b:
    
urllib.urlopen("http://metin2wiki.eu/index.php/" c.split("    ")[0].replace(" ""_")).readlines()
    print 
"http://metin2wiki.eu/index.php/" c.split("    ")[0].replace(" ""_") + "---> Done"
    
print i
    i 
+=1
    
for y in x:
        if 
y.find("Basis-EXP") != -1:
            try:
                
int(y.split("</i>")[1].split("<")[0].replace(".",""))
                
d.write("Update player.mob_proto set exp ='" y.split("</i>")[1].split("<")[0].replace(".","") + "' where vnum ='"c.split("    ")[1].replace("\n""")+ "';\n")
            
except:
                
xxx 1
            
d
.close() 
abspeichern.

Danach doppelklick auf die test.py und voila er schreibt die Querries in die test.txt die er erstellt.

danach die Querries auf die Db via navicat anwenden (f6 und einfügen) und voila ihr habt original DE like exp

Vorgehensweise:

Er Öffnet die Metin2 Wiki seite des Mobs und sucht dort die Basis-Exp, die dort für jeden Mob angegeben sind heraus.
MfG xCPx
Attached Files
File Type: zip test.zip (438 Bytes, 228 views)
xCPx is offline  
Thanks
46 Users
Old 09/18/2012, 21:22   #2



 
sLay.'s Avatar
 
elite*gold: 80
The Black Market: 121/0/1
Join Date: Feb 2010
Posts: 4,406
Received Thanks: 2,855
Die Idee ist echt gut !
sLay. is offline  
Old 09/18/2012, 21:26   #3
 
xCPx's Avatar
 
elite*gold: 20
Join Date: Jun 2011
Posts: 2,897
Received Thanks: 3,336
#Edit: kleiner Bugfixx
xCPx is offline  
Old 09/18/2012, 21:28   #4
 
Stamm1994's Avatar
 
elite*gold: 24
Join Date: Jun 2011
Posts: 667
Received Thanks: 782
wie kommst du nur auf solche sachen :OOOO

geil einfach nur geil
Stamm1994 is offline  
Old 09/18/2012, 21:29   #5
 
nybu's Avatar
 
elite*gold: 0
Join Date: May 2011
Posts: 2,806
Received Thanks: 8,536
Wie kommt man auf solche Ideen?... Such dir Hobbys!
Trotzdem vielen Dank, wird bestimmt für
einige hilfreich sein
nybu is offline  
Old 09/18/2012, 21:29   #6
 
elite*gold: 0
Join Date: Nov 2011
Posts: 478
Received Thanks: 790
Oder von DE die mobproto richtig entpacken.
Da stehen alle werte komplett drinne..
Zymos is offline  
Thanks
3 Users
Old 09/18/2012, 21:29   #7
 
xCPx's Avatar
 
elite*gold: 20
Join Date: Jun 2011
Posts: 2,897
Received Thanks: 3,336
Quote:
Originally Posted by 'NyBu# View Post
Wie kommt man auf solche Ideen?... Such dir Hobbys!
Trotzdem vielen Dank, wird bestimmt für
einige hilfreich sein
Ich habs für mein Server gebraucht xD
also die exp DE Like, aber war zu faul es abzutippen xD

@Zymos: und wer kann das hier? Vllt 10 Leute und von denen teilt es niemand.
xCPx is offline  
Thanks
3 Users
Old 09/18/2012, 21:35   #8
 
elite*gold: 43
Join Date: Aug 2012
Posts: 166
Received Thanks: 208
Danke

Werde es für mein Project nutzen!
.SeveN™ is offline  
Old 09/18/2012, 21:40   #9
 
xCPx's Avatar
 
elite*gold: 20
Join Date: Jun 2011
Posts: 2,897
Received Thanks: 3,336
# Nochmal nen Bugfixx, da das mit den locale_names bei den Querries spinnt, nun mit Vnums
xCPx is offline  
Old 09/18/2012, 21:59   #10
 
.CHJonas's Avatar
 
elite*gold: 0
Join Date: Sep 2012
Posts: 269
Received Thanks: 125
Bei mir kommt:

PHP Code:
You have an error in your SQL syntaxcheck the manual....... 
Was hab ich falsch gemacht?
.CHJonas is offline  
Old 09/18/2012, 22:04   #11
 
Retrograd's Avatar
 
elite*gold: 142
Join Date: Jan 2009
Posts: 486
Received Thanks: 128
hatte ich auch dann habe ich einfach so geschrieben

PHP Code:
 mysql "SELECT locale_name from player.mob_proto" > /usr/mob_proto 
ich habe aber ein anderes problem. bei mir schreibt er das nirgends rein
Retrograd is offline  
Old 09/18/2012, 22:12   #12
 
.DarthNeno's Avatar
 
elite*gold: 0
Join Date: Apr 2012
Posts: 336
Received Thanks: 258
Sehr Nice x3
.DarthNeno is offline  
Old 09/18/2012, 22:52   #13
 
elite*gold: 1
Join Date: Apr 2012
Posts: 928
Received Thanks: 2,486
Quote:
d.write("Update player.mob_proto set exp ='" + y.split("</i>")[1].split("<")[0].replace(".","") + "' where vnum ='"+ c.split(" ")[1].replace("\n", "")+ "';\n")
Quote:
exp = re.findall('Basis-EXP</a>:</i> (.*)<br />', UrlContext)[0]
Hehe.
.Awesoome' is offline  
Old 09/18/2012, 22:53   #14
 
PhanToM.LorD's Avatar
 
elite*gold: 29
Join Date: Oct 2010
Posts: 1,185
Received Thanks: 1,471
Nette Idee Danke
PhanToM.LorD is offline  
Old 09/18/2012, 23:38   #15
 
elite*gold: 300
Join Date: Sep 2011
Posts: 151
Received Thanks: 3,190
Hab mich dann auch kurz rangesetzt, das Teil läuft via multi threading und ist demnach wesentlich schneller.
Mob_proto Datei wird benötigt, dann dumped es die Querys und speichert es in der als Output File angegeben Datei wundertoll ein:

Download:


Virustotal:



Source:
PHP Code:
#!/usr/bin/python
# -*- coding: latin-1 -*-
import reurllibthreadsysos

class BasicExp(object):
    
Querys = []
    
ThreadCount 0
    
    def __init__
(self):
        if 
sys.platform == 'linux' or sys.platform == 'linux2':
           
self.Clear lambdaos.system('clear')
        else:
           
self.Clear lambdaos.system('cls')
        
self.Clear()
        
        
mobprotofile self.AskFile("mob_proto file:\n")
        
outputfile raw_input("Output file:\n")
        
        
ProtoFile open(mobprotofile"r+").read()
        
MobProtoContext re.findall('<Mob vnum="(.*)" name'ProtoFile)

        
MobList = []
        for 
vnum in MobProtoContext:
            
MobName re.findall('<Mob vnum="%s" name=.* gb2312name="(.*)" type' % (vnum), ProtoFile)[0]
            
Append = [vnumMobName]
            if 
not Append in MobList:
                
MobList.append([vnumMobName])
            
        for 
Mob in MobList:
            while 
True:
                if 
self.ThreadCount 50:
                    
self.ThreadCount += 1
                    thread
.start_new_thread(self.DumpBasicExp, (Mob,))
                    break
                else:
                    
pass
            
        
while self.ThreadCount != 0:
            
pass

        open
(outputfile"w+").write("\n".join(self.Querys))
        
raw_input("Dump sucessfull...\n")
        
    
def AskFile(selfmsg):
        
MobFile raw_input(msg)
        if 
os.path.exists(MobFile):
            return(
MobFile)
        else:
            
self.Clear()
            print(
"File not found, try again...\n")
            return(
self.AskFile(msg))
        
    
def DumpBasicExp(selfMob):
        
IdMonster Mob
        UrlContext 
urllib.urlopen("http://metin2wiki.eu/index.php/%s" % (Monster.replace(" ""_"))).read()
        
self.ThreadCount -= 1
        
if UrlContext.find("Diese Seite enthält momentan noch keinen Text") != -1:
            print(
"Mob %s not found." % (Mob))
        else:
            try:
                
Exp re.findall('Basis-EXP</a>:</i> (.*)<br />'UrlContext)[0].replace(".""")
                
Query 'Update player.mob_proto set exp = %s where vnum = %s;' % (ExpId)
                
self.Querys.append(Query)
                print(
Query)
            
except IndexError:
                print(
"No Basic Exp given(Mob: %s)" % (Mob))

BasicExp() 
Auf Wunsch von Computerfreek noch einen "kanonischen" Syntax:
PHP Code:
#!/usr/bin/python
# -*- coding: latin-1 -*-
import reurllibthreadsysos
class BasicExp(object):
    
Querys = []; ThreadCount 0
    def __init__
(self):
        if 
sys.platform == 'linux' or sys.platform == 'linux2'self.Clear lambdaos.system('clear')
        else: 
self.Clear lambdaos.system('cls')
        
self.Clear(); mobprotofile self.AskFile("mob_proto file:\n"); outputfile raw_input("Output file:\n")
        
ProtoFile open(mobprotofile"r+").read(); MobProtoContext re.findall('<Mob vnum="(.*)" name'ProtoFile); MobList = []
        for 
vnum in MobProtoContext:
            
MobName re.findall('<Mob vnum="%s" name=.* gb2312name="(.*)" type' % (vnum), ProtoFile)[0]; Append = [vnumMobName]
            if 
not Append in MobListMobList.append([vnumMobName])
        for 
Mob in MobList:
            while 
True:
                if 
self.ThreadCount 50self.ThreadCount += 1thread.start_new_thread(self.DumpBasicExp, (Mob,)); break
                else: 
pass
        
while self.ThreadCount != 0pass
        open
(outputfile"w+").write("\n".join(self.Querys)); raw_input("Dump sucessfull...\n")
    
def AskFile(selfmsg):
        
MobFile raw_input(msg)
        if 
os.path.exists(MobFile): return(MobFile)
        else: 
self.Clear(); print("File not found, try again...\n"); return(self.AskFile(msg))
    
def DumpBasicExp(selfMob):
        
IdMonster MobUrlContext urllib.urlopen("http://metin2wiki.eu/index.php/%s" % (Monster.replace(" ""_"))).read(); self.ThreadCount -= 1
        
if UrlContext.find("Diese Seite enthält momentan noch keinen Text") != -1: print("Mob %s not found." % (Mob))
        else:
            try: 
Exp re.findall('Basis-EXP</a>:</i> (.*)<br />'UrlContext)[0].replace("."""); Query 'Update player.mob_proto set exp = %s where vnum = %s;' % (ExpId); self.Querys.append(Query); print(Query)
            
except IndexError: print("No Basic Exp given(Mob: %s)" % (Mob))
BasicExp() 
MfG DaRealFreak
DaRealFreak is offline  
Thanks
9 Users
Closed Thread


Similar Threads Similar Threads
aufpassen schaut alle auf ranking unter lc ger und Luxor xSweetBadBoyx
10/21/2010 - Last Chaos Trading - 3 Replies
wie der oben genannte name hier die skype namen der beiden betrüger! xSweetBadBoyx= Dj-player-alpha sein skype name und hier in elite pvps heißt er derkiller2010 aufpassen hat mir meine ganzen sachen genommen wie phönix pferd usw seine freundin heißt in skype :bebigirlx3 aufpassen aufpassen nicht auf die beiden reinfallen sie spielen auf luxor ein name bis jetz bekannt xSweetBadBoyx heißt auch in skype so!! sie sind beide betrüger !!!
I need the original Mobs.txt
09/25/2010 - CO2 Private Server - 0 Replies
I have read a lot about how to create mobs.... but really, i am not that interested. I am just interested in what is the original monsters. If someone could write it down or upload the mobs.txt that would be great:D
MOBS SIND ALLE WEG ?!
05/11/2010 - Metin2 Private Server - 4 Replies
hi com, Ich habe ein riesen Prob xD Iwie sind meine Mobs in den Maps weg also grotte feuerland etc. woran kann das liegen und wie soll ich das beheben. Freue mich über jede hilfe
[EG] Alle Mobs von der Map tot..
05/09/2010 - 4Story - 16 Replies
Huhu ;) Laufe gerade ganz gemütlich mit meinem Krieger im 10er Doku rum, einen Augenblick glaube ich meinem Augen kaum .. mit einem Schlag sind alle Mobs von der Map tot umgefallen :eek: Geh ich zum Deri-Boss steht da ein Bogi, der sagt : "Geiler Hack, hhm ?!" Er nicht einmal geantwortet, als ich ihn nach dem Hack gefragt habe. WTF ? Mich würde interessieren ob schonmal jemand damit Erfahrung gemacht hat..



All times are GMT +2. The time now is 08:59.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

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