https://public.etherpad-mozilla.org/p/9rS4qB27WE Skills are special abilities. They can be passive (no need to cast them to see the effect), self skills (casted on self), targeted (can be casted on another player/monster), and ground skills (you cast them on a certain ground cell) Skills can set or unset status effects. Status effect is a special "flag" that can modify attributes (ex. str, or def, or crit rate) of the player/monster it's attached to. Some examples: poisoned, blinded. Status effects can also interact battle logic, for example on each hit drain SP, increase/decrease damage etc.. Status effects can last for some amount of time, or be cancelled (by casting some skill, or when a conflicting status effect is set on target), but they can be also infinite. In the client status effects can be represented with an icon, or particles. Ground skills very often spawn in the given coordinates so-called skill units. Skill units are visible if client has proper graphic, they last a certain amount of time. They can cause damage to targets within certain radius, or change their attributes, or trigger when somebody steps on them. Examples: traps, fire pillars. Players can belong to one class. In RO classes are mapped to professions (ex. Swordsman, Mage), and in TMW/Evol classes are mapped to races. Each class can have it's own skill tree, but since TMW/Evol doesn't want to restrict races, all races will have very similar skill trees. From now when I will say "race", I will mean "class", and vice versa. The race has a set of skills, and each skill can have it's maximum level (see server-data/db/re/skill_tree.conf). The player can manually raise skill level (if he has free skill points) up until this maximum level. But NPC (e.g. script) can set the level of this skill beyond the given maximum level. Even if max. level of skill in skill_tree.conf is set to 0, a script can set it higher. When casting a skill, a being (player, monster, npc) goes through several stages. The simplified scheme is: 1) Check if skill can be casted 2) Casting 3) Perform action (usually set/unset status effect for targeted skills, or spawn skill untis for ground skills, but can be anything really) 4) Remove cost (items, hp, sp, zeny) needed for spell 5) Cooldown. Cooldown can differ, when you cast the same skill twice, or when another skill follows. On #1 stage various checks happen. For example, some skills can work only with certain weapon class, or certain ammo type, or shield equipped (see server-data/db/re/skill_require_db.txt). Other requirements can be present as well. If they are not met, stage #2 never happens, and client is notified about skill failure. There are also homunculus and mercenary skills, they can be used by the corresponding being, but are, in fact, activated by the client. There are skills that can affect party members. There are guild skills, that affect guild members only or can be cases by exact guild members only. There are marriage skills, they can be used only when player is married. There are skills bound to weapons (for example hitting with given sword can cause additional fire damage). There can be NPC or mob skills, players cannot cast them. For example suicide skill. Certain skills or skill groups can be forbidden on some maps. So, for example, if a Teleportation skill would break some quest, you can forbid Teleportation on that map. The list of RO skills can be found here: http://ratemyserver.net/index.php?page=skill_db_class === TMW/Evol skills === There are 4 groups of skills: Mage, Warrior, Archer, Thief. Each group has about 25 skills, so players don't become overpowered. Each category is, in fact, a passive skill itself: - Mage (max lvl 5) -- increases SP recovery - Warrior (max lvl 5) -- increases HP recovery - Thief (max lvl 5) -- increases FLEE - Archer (max lvl 5) -- increases *NOT SURE WHAT* These passive skills are available for the player at the early stage of the game, and he is free to spend his skill points on them to his liking. But since the amount of skill points is finite (I'm thinking around 40), if he tries to level up everything, later he might not have enough skill points to get an important skill in one of branches. Each branch/profession, when leveled up, opens access to certain skills of the corresponding path. The new skills simply appear in the skill window, no need to talk to NPC or do quests. But the new skills are of level 0, so the player must spend 1 skill point to raise it from 0 to 1 (leveling will be discussed later). Let's call those skills that belong to each path under level 5 "low level skills". So the player can get a lot of low level skills from each path, but he shouldn't, because he won't have enough skill points for more advanced skills of the path he choses later. Later in his quest the player will be given an option to join one of 4 factions, each representing it's own path (profession). There are some restrictions. For example, to join Mage's guild, you must advance your Mage passive skill to level 5. After you join the Mage's guild, you start doing quests and build your carreer, and you gain access to Mage skill lvl 6, 7, 8, 9 and 10. The next level is given by NPC when you get your next rank in the faction. Since you can't join other factions, levels 6-10 of other 3 professions won't be available for you anymore. Once you joined a faction, there is no turning back. But you can still keep and level up low-level skills of other paths. Skill levels can be raised in 2 ways. One is by manually increasing the level in the skill window. The 4 passive skills (Mage, Warrior, Archer, Thief) are leveled up from 0 to 5 this way, also a new active skill is raised from level 0 to 1 manually. After level 1, the active skills cannot be leveled manually, they are leveled through usage. For example, the player has fireball skill level 1. He used fireball 100 times successfully, the level increased to 2, 1000 times, increased to 3. The corresponding formulas will be developed later. Obviously, higher level skills require more training. There is also a maximum level of each active skill, let it be 10 for now. But to reach level 10, a player must spend months leveling up only that one skill. And it requires time, mana, items, so if a player contributes only to one skill, he must abandon other skills, which means, for example, he won't be strong against some types of monsters. A player is given ~40 skill points/levels. To fully develop one profession, he needs about 5 + 25 = 30 skill points (5 for the passive skill, and 25 points to raise each skill of "his" branch from 0 to 1), which leaves about 10 skill points to spend on other branches. NOTE: the max amount of skill levels might be increased to 50.