ctgwglzc 发表于 2010-11-17 22:47:34

[Guide] Create / Modify Skills! 创建修改技能

Hey Guys,
Well I've been testing and working with skills the last days, and since I haven't seen any guides about that, yet, I decided to write a guide myself.
It'll be like school, so here we Go:


The Schedule:


{Part 1} >Database
#1 - Understanding the MAGIC Table.
#2 - Understanding the MAGIC_TYPE Tables.
#3 - Editing Skills on your own.
#4 - Editing Skills via a Query.

{Part 2} >Client
#1b - Understanding the Skill_Magic_Main_us.tbl
#2b - Editing the Skill_Magic_Main_us.tbl
#3b - Understanding the Skill_Magic_1-9.tbl

-------------------------------------------------------------------------


{Part 1} >Database

Lesson 1: Understanding the MAGIC Table.

The MAGIC table lists ALL skills, no matter what type or what monster / player can cast them.
This is a basic only, for all skills, the further effects or damages are listed in the MAGIC_TYPE tables.

Explanation of some Columns:
MagicNum: ID of the Skill - It has to match with the Client & also it's necessary for the MAGIC_TYPE tables.
EnName: Name of the Skill, though it's database only & players will see the Name from the Client tables.
KrName: The same as EnName.
Description: A description for the skill, but since players see the client side description it's pretty useless unless you want to write some notes to a skill.
BeforeAction: An Action that has to be achieved before the skill can be cast.
TargetAction: An action that's accomplished at your Target. (0 represents 99.99% of the Skills, most DB's have around 5 Skills that have a TargetAction besides 0).
SelfEffect: Just leave it with 0, and it'll be fine.
FlyingEffect: This one I'm not sure of, since I never used it.
TargetEffect: Effect that takes place at the target, it links to the MAGIC_TYPE tables!
Moral: Description whether the skill is cast on yourself ( 0 ) or is an attack ( 7 ).
SkillLevel: Level required for casting the skill.
Skill: Not sure, but I think it's for linking to the client.
Msp: Mana that's used after casting.
HP: This one I'm not sure of, but ya pretty useless imo. (Just set it to 0)
ItemGroup: The Items the skill can be casted with, for example 1 would enable the skill for DAGGERS only and 9 for Warrior / BP Weapons like Clubs, Spears etc.
UseItem: Item used when casting the Skill, such as Master Skills often use the Stones of <Class>.
CastTime: Time that passes by while casting the Skill.
ReCastTime: Cooldown that has to run out before you're able to cast it again.
SuccessRate: The Rate of a Successful skill, for example FailSafe attacks have 100 and non failsafes around 80.
Type1: Checks whether the skill is a magical or physical one and such things. Physical one for example is 1.
Type2: Checks for secondary effects of the skill, such as DoT (Damage over Time) which is 3 in this case.
Range: The Maximum Range between you & your Target.
Etc: Sets how many following effects the skill will cause (MAGIC_TYPE tables).
Event: If set to 1 the Skill wont work without master quest. Set it to 0 for regular skills.

ctgwglzc 发表于 2010-11-17 22:48:19

Lesson 2: Understanding the MAGIC_TYPE Tables:

MAGIC_TYPE tables are used for further effects of a skill, such as Damage, DoT (Damage of Time) etc. etc. etc.

Explanation of ALL Columns listed in MAGICTYPE1-9:
MAGIC_TYPE1:
iNum: Skill's ID.
Name: Name, server side only, so it's useless - you can do a comment there.
Description: Description, server side, too.
Type: This one I'm not entirely sure of, (Can either be 1 or 0 ) you should check similiar skills to the one you wanna create and copy the column.
HitRate: Set it to 100 and it'll be fine.
Hit: The % of the attack, means Blooding for example is 400 (400% attack.).
AddDamage: The Bonus damage a skill does (( disregarding defence )), though I guess it's on monsters only.
Delay: Set it to 100 and it'll be fine.
ComboType: Set it to 0 and it'll be fine, since it's useless in 1299 I think.
ComboCount: Set it to 1 and it'll just work fine.
ComboDamage: Useless, set it to 0.
Range: Useless, set it to 0.

MAGIC_TYPE2:
Pretty much the same as MAGIC_TYPE1, but it's for archer's skills (and Throwing Knife) as far as I know.

MAGIC_TYPE3:
Well, it's like MAGIC_TYPE1 but some special things are around.
Generally, the table is for adding special effects of a skill, like magic damage, or dots (Like Ignitation has a DOT [-Dot => Damage over time].

Special Columns:
Radius: Necessary to be set for AoE skills. (15 is Nova's Radius, just to give an example.
Angle: Set it to 0 if you want a proberly working Skill without bugs...
DirectType: Not sure, but I think 1 will make the skill work with all zones, 8 only at monsters & 9 is a special one for Drains. Not sure though, as I said.
FirstDamage: The Damage the enemy is inflicted by when the attack is casted.
EndDamage: The last damage of the timed damage.
TimeDamage: The damage dealed over the set time.
Duration: The time the DoT (Damage over Time) should last.
Attribute: Special effects the skill should include, for example 3 is stun, 1 is fire,2 is ice & 6 poison.

MAGIC_TYPE4:
The iNum and columns such as Description or Name are the same as always, only some special columns are added in the table.
Generally, this table is used for Buffs / Debuffs of any kind / class / monster.
BuffType: Sets the type of the buff, such as, AC , HP , Ac Debuff, etc etc. (Ac Debuff => 2, MP Debuff 7, Slow => 6, AttackRateDebuff => 9, Magical Resist => 8, AC Bonus => 14, Attack Power Bonus => 4....)
Radius: The Area (Necessary only for Party Buffs such as Wolf ,the 52 Priest Skill or AoE skills)
Speed: The Speed of the Animation (I think).
AC: If BuffType = 14 you can set Bonus AC here.
ACPct: An AC buff that works with %. so if you put 140 it will be 40% additional AC & if you put 30 it will be -70%.
Attack: Attack Buff in %. Wolf for example is 130 which is +30%.
MagicAttack: Magic Attack Damage + in %. (For Example the Absolute Power Skill) The basic is 100 again, so 110 would be +10%.
MaxHP: Max HP added.
MaxHPPct: Max HP added via %. Undying, for example, has 160, so it adds additional 60%.
MaxMP: Max MP added.
MaxMPPct: Max MP added via %. Basic is 100 again, so 120 would be +20% for example.
HitRate: Additional HitRate for you, works same as MaxMpPct.
AvoidRate: Think whether you can avoid the skill or not?! (In %).
Str: Additional Str Bonus!
Sta: Additional HP Bonus! (In Stat Points!)
Dex: Additional Dex Bonus!
Intel: Additional Intr Bonus!
FireR: Additional Fire Resistance!
ColdR: Additional Ice Resistance!
LightningR: Additional Lightning Resistance!
MagicR: Additional Magic Resistance!
DeseaseR: Additional Desease Resistance!
PoisonR: Additional Poison Resistance!
ExpPct: According to nexux, it's got something to do with the NP-Increasements - untested, yet.

MAGIC_TYPE5:
All Columns Besides Type,ExpRecover and NeedStone are same as always. Generally the Table is for Cures.
Type: The Type of Cure. (1 => Deseases like DoT (Damage over Time) ; 2 => Debuffs such as Malice ; 3 => Exp Recovery - for example, Ress skills)
ExpRecover: Recovered Experience in %.
NeedStone: The quantity of Stone of Res.. needed.

MAGIC_TYPE6:
Generally this table is for Transforms.
Size: The total size of the model you want to transform in (in %).
Transform ID: Desire Monster's or NPC's ID.
Duration: The period this transformation will last.
MaxHP: A Standart HP the new Transformation will have, set it to 0 if you want the player's hp.
MaxMP: A Standart MP the new Transformation will have, set it to 0 if you want the player's mp.
Speed: Speed of the Transformed Monster, set it to 0 for default player's speed.
AttackSpeed: Speed of the 'R' hits, put it to 0 if you want it to be default player's speed.
TotalHit: The maximum Damage a player can do with this Transformation.
TotalAc: Standart AC for the Transformation, set it to 0 if you want to have player's AC.
TotalHitRate: The Hitrate of the Transformation, set it to 0 if you want the player's hitrate.
TotalEvasionRate: Standart EvasionRate for the Transformation, set it to 0 if you want to have player's Rate.
TotalFireR: Standart Fire Resistance for the Transformation, set it to 0 if you want to have player's Fire Resistance.
TotalColdR: Standart Ice Resistance for the Transformation, set it to 0 if you want to have player's Ice Resistance.
TotalLightningR: Standart Lightning Resistance for the Transformation, set it to 0 if you want to have player's Lightning Resistance.
TotalMagicR: Standart Magic Resistance for the Transformation, set it to 0 if you want to have player's Magic Resistance.
TotalDeseaseR: Standart Desease Resistance for the Transformation, set it to 0 if you want to have player's Desease Resistance.
TotalPoisonR: Standart Poison Resistance for the Transformation, set it to 0 if you want to have player's Poison Resistance.
Class: Just set it to 1111 and it'll be fine (IN CASE YOU DO A SHERIF, SET IT TO 10!)
UserSkillUse: If a User uses the Skill, set it to 1, if NPCs should use the skill set it to 0.
NeedItem: The ID of the scroll, 2 is the normal, 1 is special.
SkillSuccessRate: Pretty useless, leave it as 0.
MonsterFriendly: Pretty useless, leave it as 0. (IN CASE YOU DO A SHERIF, SET IT TO 1!)

MAGIC_TYPE7:
Generally this table is used for Provoke or sleep skills.
nIndex == iNum
strNote == Description
byValidGroup: This one I'm not sure of.
byNationchange: If the Monster's nation should change to El Morad it's 2, if to Karus it's 1 and if it shouldn't change at all it's 0.
shMonsterNum: The maximum number of monsters affected by the skill.
byTargetChange: The status of the monster after casting the skill. (1 => Provoked ; 2 => Sleeping)
byStateChange: This one I'm not sure of.
byRadius: The Skill's Effect's area.
shHitRate: This one I'm not sure of.
shDuration: Periode lasting of the Status.
shDamage: The Damage the skill should inflict.
byVisoin: This one I'm not sure of, set it to 100 and it'll be fine.
nNeedItem: If an item is used when casting the skill, put the Item's ID here.

MAGIC_TYPE8:
This Table is for all kinds of Teleports.
Target: Set it to 1 if the caster is the moving target.
Radius: The maximum range the skill will move the caster.
WarpType: Type of the Destination the caster Teleports to. ( 25 => Friend in PARTY (OR generally selected) ; 12 => Friend selected in FRIENDLIST ; 1 => Respawn point ; 21 => Monster)
ExpRecover: I really don't know what it is used for, set it to 0 & it'll be fine.

MAGIC_TYPE9:
This table is for all kinds of Evocations OR personal Status Changes (Not sure...).
ValidGroup: I'm not sure of this one.
Nationchange: Which nation the summoned monster should turn to. (1 => Karus ; 2 => El Morad ; 0 => Monsters)
MonsterNum: ID of the Summoned Monster.
TargetChange: I'm not sure of this one.
StateChange: I'm not sure of this one.
Radius: Sets the Effect's Area.
HitRate: Not sure of this one.
Duration: After expiration of this period the Monster will die.
AddDamage: Additional Damage when casting (Works only if you set a Radius!)
Vision: Not sure of this one, just set it to 100 and it'll work fine.
NeedItem: Item needed for summoning, put the Item's ID here. (0 if no item is required)

ctgwglzc 发表于 2010-11-17 22:48:58

Lesson 3: Editing Skills on your own:

The probably best, but hardest kind of adding or modding skills.

However, it can be eased with this Query:SELECT * FROM MAGIC LEFT OUTER JOIN MAGIC_TYPE1 on MAGIC.iNum = MAGIC_TYPE1.iNum LEFT OUTER JOIN MAGIC_TYPE2 on MAGIC.iNum = MAGIC_TYPE2.iNum LEFT OUTER JOIN MAGIC_TYPE3 on MAGIC.iNum = MAGIC_TYPE3.iNum LEFT OUTER JOIN MAGIC_TYPE4 on MAGIC.iNum = MAGIC_TYPE4.iNum LEFT OUTER JOIN MAGIC_TYPE5 on MAGIC.iNum = MAGIC_TYPE6.iNum LEFT OUTER JOIN MAGIC_TYPE7 on MAGIC.iNum = MAGIC_TYPE7.iNum LEFT OUTER JOIN MAGIC_TYPE8 on MAGIC.iNum = MAGIC_TYPE8.iNum LEFT OUTER JOIN MAGIC_TYPE9 on MAGIC.iNum = MAGIC_TYPE9.iNum WHERE iNum = xxxInput the Skill's ID as xxx. Execute & wola, shows all columns that you can edit with the selected skill Posted Image

Things you should invariably account for:
-> If you don't know how to fill out several Columns, either check for similiar skills or ask for help.
-> Never add too high Damages to Magical Attacks, since in Knight Online there's low resistance only!
-> Always check Skills of the same kind, copy & paste them, and modify them. It saves lots of time Posted Image

ctgwglzc 发表于 2010-11-17 22:49:39

Lesson 4: Editing Skills via Query:

This is a Query you COULD use for editing Skills.UPDATE Table SET Cell = Value WHERE Row = InstantaneousValueJust fill out the Query and execute. (The colored ones are the ones you needn't modify.)

ctgwglzc 发表于 2010-11-17 22:50:52

{Part 2} >Client

Preposition:
The Client part is pretty similiar to the Databse, if you have understood DB you'll do a good job with your Client, too.
Please note that you'll need to download GoatCheez KO Editor!
Download Link:http://rapidshare.com/files/110476598/Goats_KO_Table_Editor.zip.html

Lesson 1b: Understanding your Skill_Magic_Main_us.tbl

Principially it's all the same as MAGIC table, you can compare all the columns // rows & modify them the same way as you do it with the DB.

Exceptions:
-> Column 7: It's used for the Skill's Animation, as far as I know.


Lesson 2b: Editing your Skill_Magic_Main_us.tbl

As I previously said, it's nearly the same as DB. Since, the columns don't have a description ALWAYS compare several rows and make sure you edit the right one. Also, you should know that you should never save a table file WITHOUT chosing the right Encoding Function.

Chosing the Right Encoding Function:
-> Hit the 'Edit' button found at the menue of your Table Editor.
-> Click 'Encode Function' & select 'Standart KO'.

Then save and exit.


Lesson 3b: Understanding the Skill_Magic1-9 Tables

At this point I could copy & paste my {Part 1} Lesson 3: Understanding MAGIC_TYPE1-9 since it's totally the same, just take care of the points i told before and you'll be fine.

leonjaykai 发表于 2010-11-18 00:19:39

這是魔獸論檀有關騎士創建技能的解釋大家努力加油啊

arbies 发表于 2010-11-19 12:51:21

这挺多是“modify”,改改数字而尔,有介绍下出新的技能就好了,不过图片上难搞。

leonjaykai 发表于 2010-11-19 21:44:09

7# arbies


如果新技能創的出來圖示應該簡單吧呵呵

jy05036426 发表于 2010-11-23 17:22:31

看不懂```

ykpikacu 发表于 2011-2-7 16:33:42

由于 Thanks
页: [1] 2
查看完整版本: [Guide] Create / Modify Skills! 创建修改技能