|
You last visited: Today at 20:39
Advertisement
[R] Skillsystem - like "Scope Square"
Discussion on [R] Skillsystem - like "Scope Square" within the Metin2 PServer Guides & Strategies forum part of the Metin2 Private Server category.
02/25/2015, 18:50
|
#1
|
elite*gold: 0
Join Date: Jan 2015
Posts: 239
Received Thanks: 585
|
[R] Skillsystem - like "Scope Square"
Hallo
Ich release mal aus Langeweile mal das Skillsystem von Dyshaxos noname Server Scope Square.
Keine Ahnung, warum er es als Referenz für seinen Service nimmt.. War nur knapp 10 Minuten Arbeit.
Ist untested; falls es Bugs gibt, sagt bescheid.
Evtl fixe ich sie ja.
Habe eine Funktion aus der Seelenstein-Quest genommen, weil ich kein Bock hatte, sie selber zu schreiben.
Wie das ganze funktioniert
Code:
quest skillsystem begin
state start begin
when login begin
send_letter("Skillsystem")
end
when login or levelup with pc.getf("skillsystem", "skill_"..pc.level) == 0 begin
pc.setf("skillsystem", "skillpoints", pc.getf("skillsystem", "skillpoints") + pc.level*2)
pc.setf("skillsystem", "skill_"..pc.level, 1)
end
when button or info begin
say_title("Skillsystem")
local list = training_grandmaster_skill.BuildGrandMasterSkillList(pc.get_job(), pc.get_skill_group()),{}
table.foreach(list, function(i) table.insert(menu, list[2][i].." <".. list[1][i]..">") end)
table.insert(menu, "Abbrechen")
say("Wähle eine Fertigkeit:")
local s = select_table(menu)
if s == table.getn(menu) then return end
local costs = skillsystem.getSkillCosts()[list[1][s]] or 0
say_title("Skillsystem - ".. menu[s])
say_reward("Kosten: ".. costs)
say_reward("Verfügbare Punkte: ".. pc.getf("skillsystem", "skillpoints"))
say()
if select("Verbessern", "Abbrechen") == 2 then return end
pc.set_skill_level(list[1][s], pc.get_skill_level(list[1][s]) + 1)
pc.setf("skillsystem", "skillpoints", pc.getf("skillsystem", "skillpoints") - costs)
send_letter("Skillsystem")
end
function getSkillCosts()
return ({1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30
31,32,33,34,35,36,37,38,39,40})
end
function BuildGrandMasterSkillList(job, group)
GRAND_MASTER_SKILL_LEVEL = 30
PERFECT_MASTER_SKILL_LEVEL = 40
local skill_list = special.active_skill_list[job+1][group]
local ret_vnum_list = {}
local ret_name_list = {}
-- test_chat(string.format("job=%d, group=%d", job, group))
table.foreach(skill_list,
function(i, skill_vnum)
local skill_level = pc.get_skill_level(skill_vnum)
-- test_chat(string.format("[%d]=%d", skill_vnum, skill_level))
if skill_level >= 1 and skill_level < PERFECT_MASTER_SKILL_LEVEL then
table.insert(ret_vnum_list, skill_vnum)
local name=locale.GM_SKILL_NAME_DICT[skill_vnum]
if name == nil then name=skill_vnum end
table.insert(ret_name_list, name)
end
end)
return {ret_vnum_list, ret_name_list}
--return {ret_vnum_list, ret_name_list}
end
end
end
|
|
|
02/25/2015, 19:08
|
#2
|
elite*gold: 0
Join Date: Feb 2015
Posts: 156
Received Thanks: 73
|
danke aber unnötig. lass ihn doch seinen server führen und dont copy things.
|
|
|
02/25/2015, 19:22
|
#3
|
elite*gold: 0
Join Date: Sep 2009
Posts: 665
Received Thanks: 444
|
Mhh meine Quest ist besser geschrieben =)
Code:
when login begin
send_letter("Skillsystem")
end
when login or levelup with pc.getf("skillsystem", "skill_"..pc.level) == 0 begin
pc.setf("skillsystem", "skillpoints", pc.getf("skillsystem", "skillpoints") + pc.level*2)
pc.setf("skillsystem", "skill_"..pc.level, 1)
end
Wüsste nicht, dass ich das drin hab', wenn schon könntest du auch den Client-Button dazu releasen, dann wirkt das ganze nicht so billig  desweiteren fehlen bei dir die Schleifen, und die Formel für die Berechnung der Skillpunktekosten:
f(leck_mich) = 2*skill-level² + 10
dann brauchst du nämlich dashier nicht:
Code:
function getSkillCosts()
return ({1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30
31,32,33,34,35,36,37,38,39,40})
end
Und die Textfarben hast du auch vergessen, 4 Punkte - Unterkurs.
Nochmal bitte, und diesmal richtig. =)
|
|
|
02/25/2015, 19:22
|
#4
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
Sieht eig. ganz nett aus. Warum machst du "pc.getf("skillsystem")" anstatt "pc.getqf()", wenn ich fragen darf?
|
|
|
02/25/2015, 19:25
|
#5
|
elite*gold: 0
Join Date: Dec 2014
Posts: 1,018
Received Thanks: 499
|
Quote:
Originally Posted by Dyshaxo
Mhh meine Quest ist besser geschrieben =)
Code:
when login begin
send_letter("Skillsystem")
end
when login or levelup with pc.getf("skillsystem", "skill_"..pc.level) == 0 begin
pc.setf("skillsystem", "skillpoints", pc.getf("skillsystem", "skillpoints") + pc.level*2)
pc.setf("skillsystem", "skill_"..pc.level, 1)
end
Wüsste nicht, dass ich das drin hab', wenn schon könntest du auch den Client-Button dazu releasen, dann wirkt das ganze nicht so billig  desweiteren fehlen bei dir die Schleifen, und die Formel für die Berechnung der Skillpunktekosten:
f(x) = 2*skill-level² + 10
dann brauchst du nämlich dashier nicht:
Code:
function getSkillCosts()
return ({1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30
31,32,33,34,35,36,37,38,39,40})
end
Und die Textfarben hast du auch vergessen, 4 Punkte - Unterkurs.
Nochmal bitte, und diesmal richtig. =)
|
Wie lange hast du für deine Quest gebraucht ?
|
|
|
02/25/2015, 19:28
|
#6
|
elite*gold: 0
Join Date: Sep 2009
Posts: 665
Received Thanks: 444
|
Quote:
Originally Posted by [Sensenmann]
Sieht eig. ganz nett aus. Warum machst du "pc.getf("skillsystem")" anstatt "pc.getqf()", wenn ich fragen darf?
|
Weil er nichts draufhat =)
Im Großen und ganzen - hat die Quest wenig mit meiner zutun, von dem her :P
|
|
|
02/25/2015, 19:31
|
#7
|
elite*gold: 108
Join Date: May 2013
Posts: 456
Received Thanks: 854
|
iRemix hat nichts drauf? Wäre mir neu.
Zum Release, ganz nett gemacht lieber Michi
|
|
|
02/25/2015, 19:45
|
#8
|
elite*gold: 0
Join Date: Sep 2009
Posts: 665
Received Thanks: 444
|
Quote:
Originally Posted by i[Remix]
Und trotzdem hast du nichts besseres zu tun als nun hier andauernd rumzuheulen.
Provokation failed.
Denkt er kann mich provozieren.. Was'n Süßer.
Dein ranziger noname Server kann auch mal Promo von bekannten Leuten (in diesem Falle mir) gebrauchen.
Habe ich doch gerne gemacht.
|
Davon abgesehen, dass du die Quest so dermaßen gefailt hast -> erstmal den Zweck total verfehlt -> Skillpointreward für bestimmte Quests und Raids um dem "Ich uppe immer den selben Skill bis auf M und erst dann den nächsten"-Müll der anderen Server aus dem Weg zu gehen, dann - darf man bei deiner Version c.a. 3x soviele Klicks durchführen, weil du scheinbar den Sinn einer Schleife nicht verstehst, aber gut, soll nicht mein Problem sein - dann - ist die Textformatierung Schlichtweg Krebserregend, ach und dann:
Code:
-- test_chat(string.format("job=%d, group=%d", job, group))
Quote:
|
Ist untested; falls es Bugs gibt, sagt bescheid.
|
muss dir ja ziemlich wichtig gewesen sein (:
Quote:
Originally Posted by BizepsSupportAccount
Bemerkenswert was einige Menschen in 10 Minuten schaffe wobei hingegen andere Monate für' brauchen.
|
Nur mal so - wenn du 'ne fertige Quest innerhalb einem Monat nicht eingefügt bekommst, Stichwort "Can not find map by index" - "Öööööh Syserr-fehler omg was mach ich jetzt" - ist das dein Problem, nicht meins =)
|
|
|
02/25/2015, 20:00
|
#9
|
elite*gold: 2
Join Date: Jun 2013
Posts: 1,063
Received Thanks: 1,724
|
Tolle Quest, hat was, danke fuers teilen!
|
|
|
02/25/2015, 20:02
|
#10
|
elite*gold: 1
Join Date: Aug 2014
Posts: 1,339
Received Thanks: 875
|
Bin ja auch so ein Posthunter, deshalb muss ich meinen Senf dazu geben.
Das System von dir ist nicht halb so gut, wie das von Dyshaxo.
Trotzdem danke für dieses Release...
Michi's Hate auf 3, 2, 1...
|
|
|
02/25/2015, 20:10
|
#11
|
elite*gold: 103
Join Date: Aug 2014
Posts: 1,425
Received Thanks: 315
|
Danke das du dir mühe gegeben hast :/
Werde es jedoch nicht nutzen
|
|
|
02/25/2015, 21:28
|
#12
|
elite*gold: 12
Join Date: Jun 2012
Posts: 978
Received Thanks: 860
|
Quote:
Originally Posted by Dyshaxo
Mhh meine Quest ist besser geschrieben =)
[...]
Wüsste nicht, dass ich das drin hab', wenn schon könntest du auch den Client-Button dazu releasen, dann wirkt das ganze nicht so billig  desweiteren fehlen bei dir die Schleifen, und die Formel für die Berechnung der Skillpunktekosten:
|
Was soll den daran so besonders sein? Das Konzept der Client-Quest Kommunikation ist schon seit Längerem veröffentlicht und iRemix kann etwas Python, von daher dürfte es nicht das Problem sein.
Quote:
Originally Posted by Dyshaxo
f(x) = 2*skill-level² + 10
|
Du hättest eine Konstante als Ergebnis, da F von X abhängig ist.  Anscheinend solltest du dich nochmal mit den Grundlagen der Algebra beschäftigen.
Quote:
Originally Posted by Dyshaxo
dann brauchst du nämlich dashier nicht:
Code:
function getSkillCosts()
return ({1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30
31,32,33,34,35,36,37,38,39,40})
end
|
Dies dient zur individuellen Anpassung, wenn kein Algorithmus festgelegt ist.
Quote:
Originally Posted by Mr.ChingLing
Haha geben bester mann <3
|
Haha, ja jetzt sitzt er bestimmt in der Ecke und heult wegen euch.
|
|
|
02/25/2015, 21:37
|
#13
|
elite*gold: 0
Join Date: Jul 2013
Posts: 334
Received Thanks: 130
|
Danke fürs Release, aber gab's das in der Art nicht schon?^^
|
|
|
02/25/2015, 23:01
|
#14
|
elite*gold: 0
Join Date: Feb 2015
Posts: 17
Received Thanks: 9
|
habe ich eine denk Lücke oder ist nicht das selbe wie
PHP Code:
pc.get_skill_level(list[1][s])
???
|
|
|
02/26/2015, 13:24
|
#15
|
elite*gold: 0
Join Date: Aug 2011
Posts: 2,125
Received Thanks: 844
|
ich verstehe den sinn hinter diesem system nicht..
was ist den so schlimm an dem Originalem skillsystem
|
|
|
Similar Threads
|
[Preview]Scope Square - Anfangsdungeon "The Garden"
01/02/2015 - Metin2 Private Server - 2 Replies
http://bit.ly/14iLKsS
Siehe Videobeschreibung :)
Vieles der eigentlichen 20-Gigabyte-Quali wurde vom convertieren genommen, und von Youtube dann noch der rest.
Es ist ein Dungeon, Spielbar in allen Levels, zum Leveln für
Spieler zwischen 20-40.
Aufgebaut - normal mit verschiedenen Pfaden, das interessante ist der Bossfight ->
|
All times are GMT +1. The time now is 20:39.
|
|