SphereCommunity
Skill Name - Printable Version

+- SphereCommunity (https://forum.spherecommunity.net)
+-- Forum: Sphere 0.56d (/Forum-Sphere-0-56d)
+--- Forum: Script Help (/Forum-Script-Help)
+--- Thread: Skill Name (/Thread-Skill-Name)



Skill Name - Nachtmusique - 03-05-2015 03:49 AM

After changing the Key and defname of a skill, now neither the original nor the new are recognized by sphere.

I copied the meditation skill script file into my custom folder (which loads last in the spheretables)

I changed the def and key to Channeling rather than Meditation

Now, if I try to set or show Channeling i get the message that it is not a valid command or format. I get the same message if I use meditation. I get the same message if I use the DEFNAMEs or the Keys. ANy ideas?


RE: Skill Name - darksun84 - 03-05-2015 04:23 AM

It's better to not touch the key and the defname of a skill.
Use the name property
Example:

PHP Code:
[SKILL 1]
DEFNAME=SKILL_ANATOMY
KEY
=Anatomy
TITLE
=Biologist
PROMPT_MSG
=Whom shall I examine?
NAME Medicine 

Then create a small a function like this one, for implementing the ".skillname value" behaviour

PHP Code:
//example .medicine 250
[FUNCTION medicine]
<
serv.lookupskill medicine> <argn1>

//You can also block the relative skill command for managing the skill
//Example
[FUNCTION anatomy]
return 


Last step, change the name of the skill in the skill.mul file.


RE: Skill Name - Nachtmusique - 03-05-2015 05:59 AM

Thanks


RE: Skill Name - XuN - 03-05-2015 07:19 PM

You don't really need to change anything on skills nor even on muls (I really have to modify muls, drk ¬¬), you just have to trick Sphere with a paralel function:
Code:
[function channeling]
if (<argn>)
meditation <argn1> //don't use '=' here so you can still use code like 'channeling +=x' working.
endif
return <meditation>

Now you can use the new 'skill' (it's not a skill, just a function) ingame and/or scripts.


RE: Skill Name - ThatSide - 08-10-2015 12:51 AM

(03-05-2015 07:19 PM)XuN Wrote:  You don't really need to change anything on skills nor even on muls (I really have to modify muls, drk ¬¬), you just have to trick Sphere with a paralel function:
Code:
[function channeling]
if (<argn>)
meditation <argn1> //don't use '=' here so you can still use code like 'channeling +=x' working.
endif
return <meditation>

Now you can use the new 'skill' (it's not a skill, just a function) ingame and/or scripts.

It sounds easy but what about the sysmessage a player gets when he gains a skillpoint? (your skill <skill> has been increased...)


RE: Skill Name - darksun84 - 08-21-2015 09:27 PM

I think the sysmessages are handled by clilocs number:

3000260 Your skill in ~1skillname~ has increased by ~2changeamount~. It is now ~3newvalue~.

3000261 Your skill in ~1skillname~ has decreased by ~2changeamount~. It is now ~3newvalue~.