SphereCommunity
Skill gaining system - Printable Version

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



Skill gaining system - Indiaret - 08-09-2019 03:28 AM

Hi,

Does skillmake attribute of item depends on gain chance, if i will make it ? Because I tried it through trigger @gain and making item with 30.0 skillmake has same chance as item with 60.0 skillmake. It don't take too much sense for me. Are there any exceptions or skill gain chance depends only on my skill and adv_rate of skill ?

Example:
I have robe, skillmake 35.0 tailoring
I have plain dress, skill make 50.0 tailoring

Code:
[SKILL 34]
DEFNAME=Skill_Tailoring
KEY=Tailoring
TITLE=Tailor
FLAGS=SKF_CRAFT
PROMPT_MSG=
DELAY=2.5        //Old value=4.5
STAT_STR=0
STAT_INT=0
STAT_DEX=0
BONUS_STR=0
BONUS_DEX=0
BONUS_INT=0
BONUS_STATS=0
ADV_RATE=13.0,550.0,2200.0
VALUES=1,20,80

on=@GAIN
say chance to gain: <argn2> maximum <argn3>

Making the robe and the plain dress gives me same chance to gain (11/1000). Its right ? Because I want gain chance also based on difficulty of making.

And moreover ... function skillgain dont work proper with difficulty atribute (ex. skillgain tailoring is same as skillgain tailoring,50)

Thanks Bye


RE: Skill gaining system - Coruja - 09-03-2019 09:03 AM

Unfortunately both skill success change and SKILLGAIN function uses some old weird formulas. I never changed these formulas because some ppl like "old style" servers so I avoid change these old formulas/settings

But anyway, I think the best way to master these skill-related formulas is simply write your own scripted formula on char triggers like @SkillStart or @SkillMakeItem

@SkillStart -> here you can create your own success chance formula, ACTDIFF=-100 means fail and ACTDIFF=100 means success
@SkillMakeItem -> this trigger is called -after- skill success when the crafted item is already created (ACT is the created item), here you can insert your own skillgain formula using SKILLGAIN function

You can also use these formulas directly on skilldef triggers like @Start, @Success, @Fail, etc. Also don't forget to set ADV_RATE=0.0,0.0,0.0 on these skills, this will completely disable the hardcoded skillgain formula to avoid conflicts with your scripted formula