Register for your free account! | Forgot your password?

You last visited: Today at 18:03

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

Advertisement



[Mini Release]Skill Module Adition

Discussion on [Mini Release]Skill Module Adition within the Metin2 PServer Guides & Strategies forum part of the Metin2 Private Server category.

Reply
 
Old   #1
 
elite*gold: 300
Join Date: Sep 2011
Posts: 151
Received Thanks: 3,190
[Mini Release]Skill Module Adition

Vorgeschichte:
Joa da ich neulich mal meine Scripts wieder angeschaut hatte hab ich mitbekommen, dass ich die Skill Icons einfach nur nooblike dargestellt habe.
Daraufhin hab ich mir ein kleines Script gemacht, welches mir die Icons ausgibt.

Verwenden tut ihr das Script folgendermaßen:
Ihr haut die .pyc Datei einfach in den Lib Ordner und addet dort wo ihr es nutzen wollt das hier:
PHP Code:
        import skilladition
        SkillAditionByMeLol 
skilladition.SkillAditionDialog() 
Nun könnt ihr diese Befehle ausführen, welche euch eure gesuchten Werte returnen:
SkillIcon via Index
PHP Code:
        SkillAditionByMeLol.GetSkillIcon(index"Index"grade
index ist ein integrer, der Skillindex, z.b. Aura ist Skill Index 4, Starker Körper 19 und die ganzen Values eben.
Grade ist der gesuchte Grade.
Ist ein Integrer zwischen 1 und 3(1 wäre z.b. das Icon wenn der Skill noch nicht Meister ist, 2 ist Meister, 3 ist Großmeister/P)

Charakterspezifisches SkillIcon
PHP Code:
        SkillAditionByMeLol.GetSkillIcon(count"Count"grade
count ist ein Integrer von 0-6 und sind sozusagen eure Skill Slots.
Hierbei spielt es keine Rolle mehr von welcher Rasse/Klasse euer Charakter ist, es ist einfach die Aufzählung der Skills.
Mit grade verhält es sich gleich wie oben.

SkillLevel:
PHP Code:
        SkillAditionByMeLol.GetSkillLevel(count
Hierbei wird der aktuelle Skilllevel im gewohnten Format wie auch bei den Commands returned.


Beispiel für diese Commands:
Code:
import skilladition
import chat
SkillAditionByMeLol = skilladition.SkillAditionDialog()
chat.AppendChat(chat.CHAT_TYPE_INFO, str(SkillAditionByMeLol.GetSkillIcon(3, "Count", 2)))
chat.AppendChat(chat.CHAT_TYPE_INFO, str(SkillAditionByMeLol.GetSkillIcon(31, "Index", 2)))
chat.AppendChat(chat.CHAT_TYPE_INFO, str(SkillAditionByMeLol.GetSkillLevel(3)))
returned:



War nurn Mini Script, also have fun mit, fangen halt nur Clientmodder was mit an
Hatten mich heute auch 2 danach gefragt, sonst würde ich sonen Mini Teil nichtmal releasen^^

Edit:
Source:
PHP Code:
import ui
import player
import skill
import net
import pack
import app
import dbg
import chat

class SkillAditionDialog(ui.Window):
    
def __init__(self):
        
ui.Window.__init__(self)
        
self.AddSkillIcons()

    
def __del__(self):
        
ui.Window.__del__(self)

    
def AddSkillIcons(self):
        
self.SkillList = []
        try:
            
handle app.OpenTextFile('locale/de/skilldesc.txt')
            
count app.GetTextFileLineCount(handle)
        
except IOError:
            
dbg.LogBox('Load Skilldesc Error')
            
app.Abort()
        
SkillCount 0
        
for i in xrange(count):
            
line app.GetTextFileLine(handlei)
            if (
str(line).count('\t') >= 21):
                
SkillData str(line).split('\t')
                
SkillName str(SkillData[2])
                
SkillIconName str(SkillData[12])
                
SkillIndex str(SkillData[0])
                
SkillData = {'NAME'SkillName,
                 
'ICON'SkillIconName,
                 
'INDEX'SkillIndex,
                 
'COUNT'SkillCount}
                
self.SkillList.append(SkillData)
                
SkillCount += 1

        RaceGroupInfo 
self.GetClass()
        Class = 
str(RaceGroupInfo).split('/')[0]
        
group str(RaceGroupInfo).split('/')[1]
        if (Class == 
'Warrior'):
            
SkillIndex 1
            
if (int(group) == 2):
                
SkillIndex 16
        elif 
(Class == 'Assassin'):
            
SkillIndex 31
            
if (int(group) == 2):
                
SkillIndex 46
        elif 
(Class == 'Sura'):
            
SkillIndex 61
            
if (int(group) == 2):
                
SkillIndex 76
        elif 
(Class == 'Shaman'):
            
SkillIndex 91
            
if (int(group) == 2):
                
SkillIndex 106
        self
.SkillIconIndex = []
        
Count 0
        
for SkillValue in xrange(self.NewSkillsEnable()):
            
Skillname skill.GetSkillName(int(SkillIndex))
            
SkillIndex += 1
            
for Skills in self.SkillList:
                
SkillNameList Skills['NAME']
                if (
str(Skillname) == str(SkillNameList)):
                    
Count += 1
                    SkillName 
Skills['NAME']
                    
SkillIcon Skills['ICON']
                    
SkillIndexAppend = (SkillIndex 1)
                    
PrivateSkillData = {'NAME'SkillName,
                     
'ICON'SkillIcon,
                     
'INDEX'SkillIndexAppend,
                     
'COUNT'Count}
                    
self.SkillIconIndex.append(PrivateSkillData)

    
def GetSkillIcon(selfindexmodegrade):
        if (
mode == 'Index'):
            for 
Skills in self.SkillList:
                if (
index == int(Skills['INDEX'])):
                    
SkillClass self.GetSkillClass(int(Skills['INDEX']))
                    return (((
'd:/ymir work/ui/skill/' str(SkillClass).lower()) + '/') + str((((Skills['ICON'] + '_0') + str(grade)) + '.sub')))
        
elif (mode == 'Count'):
            if 
net.IsConnect():
                
RaceGroupInfo self.GetClass()
                Class = 
str(RaceGroupInfo).split('/')[0]
                for 
Skills in self.SkillIconIndex:
                    if (
index == int(Skills['COUNT'])):
                        return (((
'd:/ymir work/ui/skill/' str(Class).lower()) + '/') + str((((Skills['ICON'] + '_0') + str(grade)) + '.sub')))
        else:
            return 

    
def GetSkillLevel(selfSearchSkillIndex):
        
SkillIconLevel = []
        for 
Skill in self.SkillIconIndex:
            
Skillgrade player.GetSkillGrade(Skill['COUNT'])
            
Skilllevel player.GetSkillLevel(Skill['COUNT'])
            
SkillIndex Skill['COUNT']
            
SkillLevelData = {'GRADE'Skillgrade,
             
'LEVEL'Skilllevel,
             
'INDEX'SkillIndex}
            
SkillIconLevel.append(SkillLevelData)

        for 
SkillData in SkillIconLevel:
            
SkillLevel = (int(SkillData['LEVEL']) + (int(SkillData['GRADE']) * 10))
            
SkillIndex str(SkillData['INDEX'])
            if (
str(SkillIndex) == str(SearchSkillIndex)):
                return 
int(SkillLevel)

    
def GetSkillClass(selfindex):
        try:
            
handle app.OpenTextFile('locale/de/skilldesc.txt')
            
count app.GetTextFileLineCount(handle)
        
except IOError:
            
dbg.LogBox('Load Skilldesc Error')
            
app.Abort()
        for 
i in xrange(count):
            
line app.GetTextFileLine(handlei)
            if (
str(line).count('\t') >= 21):
                
SkillData str(line).split('\t')
                
SkillIndex str(SkillData[0])
                
SkillClass str(SkillData[1])
                if (
int(SkillIndex) == index):
                    return 
str(SkillClass).lower()

    
def GetClass(self):
        
race net.GetMainActorRace()
        
group net.GetMainActorSkillGroup()
        if ((
race == 0) or (race == 4)):
            return ((
'Warrior' '/') + str(group))
        
elif ((race == 1) or (race == 5)):
            return ((
'Assassin' '/') + str(group))
        
elif ((race == 2) or (race == 6)):
            return ((
'Sura' '/') + str(group))
        
elif ((race == 3) or (race == 7)):
            return ((
'Shaman' '/') + str(group))

    
def NewSkillsEnable(self):
        
playersettingmodule pack.Get('playersettingmodule.py')
        
RaceGroupInfo self.GetClass()
        Class = 
str(RaceGroupInfo).split('/')[0]
        if ((
str(playersettingmodule).find('NEW_678TH_SKILL_ENABLE = TRUE') != -1) or ((str(playersettingmodule).count('1, 2, 3, 4, 5, 6,') >= 2) or ((str(Class) == 'Shaman') or (str(Class) == 'Sura')))):
            return 
6
        
else:
            return 

MfG DaRealFreak
Attached Files
File Type: rar skilladition.rar (2.7 KB, 96 views)
DaRealFreak is offline  
Thanks
18 Users
Old 01/17/2012, 22:11   #2
 
elite*gold: 0
Join Date: Jul 2009
Posts: 1,702
Received Thanks: 1,468
Hast du toll gemacht Steffi.
Nice Teil.


Wie gehts deiner Hand ?
.Awesoome is offline  
Old 01/17/2012, 22:21   #3
 
elite*gold: 0
Join Date: Aug 2010
Posts: 8
Received Thanks: 4
Mh ein Counter, wo der Client zum Server schickt, wie oft man eine Fähigkeit benutzt hat. Währ richtig geil ^-^
[SA]sathack is offline  
Old 01/17/2012, 22:27   #4
 
elite*gold: 1311
Join Date: Dec 2011
Posts: 656
Received Thanks: 1,194
Gute arbeit, danke dir.
Zadox` is offline  
Thanks
1 User
Old 01/17/2012, 22:29   #5
 
elite*gold: 0
Join Date: Jun 2010
Posts: 536
Received Thanks: 141
Verstehe den Funktion nicht pls aufklären .
FailOfLord is offline  
Old 01/18/2012, 15:59   #6
 
Fear *_*'s Avatar
 
elite*gold: 2
Join Date: Mar 2009
Posts: 1,427
Received Thanks: 584
sieht nice aus danke
Fear *_* is offline  
Reply


Similar Threads Similar Threads
[Mini-Release]New Skill Tornado
06/23/2012 - Metin2 PServer Guides & Strategies - 18 Replies
Hi to everyone. I'm here to post a new skill that i've made. It is very simple and nothing special, but i won't to delete it. For how to use it as a new skill search for a guide on this forum, if i explain it will be incomplete because i don't know hot to fix damage and crash. Here is a little video: YouTube - Metin2 New Skill Tornado Enjoy. Download: Nuova Skill by TrueHero.rar MEGAUPLOAD - The leading online storage and file delivery service
[Release] Fastject Module Injector
10/14/2011 - Coding Releases - 4 Replies
Hey, hier mal ein etwas älterer Injector von mir. Features: 2 different injection methods (CreateRemoteThread and SetThreadContext) module hiding via PEB manipulation auto save / load settings manual injection by process id
[Mini-Release]1 Skill pro Regi
09/30/2011 - Metin2 PServer Guides & Strategies - 9 Replies
Tach.. ich dacht ich ich tu auch mal ein wenig Crap verbreiten, weil mir grad so danach ist und weil ichs hier so noch ned fand bzw auch keine Lust hatte zu gucken obs des gibt.. Is nix großes.. vllt kanns ja der ein oder andere brauchen.. What ever. Der Regi setzt nur 1 Skill statt dem Nooblike 1 Regi= alles P-Scheiß quest regenbogen begin state start begin when 50512.use begin
[mini mini Release] Warning for IE for heni script
09/19/2011 - Metin2 PServer Guides & Strategies - 14 Replies
this is nothing special I just i see a lots of people have troubles with the Internet Explorer browser on the almost all HP have be release on epvp so i will explain a bether way to warning the user he is using the internet explorer and you recomend use firefox or chrone without using enterpage 1 put this code inside the <head> </head> tag <!--> <script type="text/javascript">
[Release] Mini Skill Hook, 15-09-09 Undetected, With AntiBann & Fully Bypassed
09/19/2009 - WarRock Hacks, Bots, Cheats & Exploits - 4 Replies
http://i26.tinypic.com/rmjxhd.png Clean Your Computer BeFore Using This Hack Download



All times are GMT +1. The time now is 18:08.


Powered by vBulletin®
Copyright ©2000 - 2025, 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 ©2025 elitepvpers All Rights Reserved.