From: Brian Williams - Nashak Subject: improve_skill function This code goes into fight.c, and in act.offensive.c, ensure you put a void improve_skill(etc). Finally, where skills are successful, do improve_skill(ch, ). void improve_skill(struct char_data *ch, int skill) { extern char *spells[]; int percent = GET_SKILL(ch, skill); int newpercent; char skillbuf[MAX_STRING_LENGTH]; if (number(1, 200) > GET_WIS(ch) + GET_INT(ch)) return; if (percent >= 97 || percent <= 0) return; newpercent = number(1, 3); percent += newpercent; SET_SKILL(ch, skill, percent); if (newpercent >= 4) { sprintf(skillbuf, "You feel your skill in %s improving.", spells[skill]); send_to_char(skillbuf, ch); } } Before when your skill went up it would say "You feel your skill in 62 improving" instead of "You feel your skill in improving".. put the code in fight.c, then in act.offensive.c, put a "void improve_skill(struct char_data *ch, int skill);" at the top, then in anything you want to be improved on success.. put a "improve_skill(ch, SKILL_x);" on the line below the successful part of the code.. i.e. in bash: "improve_skill(ch, SKILL_BASH);" and then when you got bash off, it would check the random, etc.. if you got it, it would set your skill 1-3 points higher.. and say "You feel your skill in bash improving." - Nashak