Item Details

Valkyrie Knife [4] ( Valkyrie_Knife )

ID 28717 Valkyrie Knife [4]
Valkyrie Knife [4] Buy Price: 50 zeny Sell Price: 25 zeny Weight: 10 Slots: 4
Type: Weapon item. Sub Type: Dagger Gender: Both Locations: Weapon
Attack: 50 Magic Attack: 50 Range: 1 Defense: Not specified
Weapon Level: 4 Armor Level: Not specified Min. Equip Level: 70 Max. Equip Level: Not specified
Refineable: 1 Gradable: Not specified Element: Neutral Classes: Not specified

The royal knife of a powerful warrior maiden. Though its power is mighty, it is easy to handle, even by those less experienced.
Class: Dagger
Attack: 50
Magic Attack: 50
Property: Neutral
Weight: 10
Weapon Level: 4
Requires Level: 70
Usable By: Novice Jobs, Swordman, Merchant Jobs, Thief Jobs, Archer Jobs, Knight Jobs, Wizard Jobs, Crusader, Sage Jobs, Royal Guard, Soul Linker, Ninja Jobs
Novice Bonus
ATK + 100
MATK + 150
Max HP + 300
Max SP + 300
Reduces the SP cost of skills by 5%.
This item is indestructible in battle.

For every upgrade level of Valkyrie Knife [4],
Int + 2
Dex + 2
Dex - 1 for every 10 base Dex.
Additional Max HP + 200.
Additional Max SP + 20.
Additional MATK + 15.
Crit + 7
Aspd + 10%
Increases critical damage on targets by 1%.
If upgrade level is +7 or higher,
Reduces damage taken from Demi-Human race enemies by 10%.

Mage Bonus
For every upgrade level of Valkyrie Knife [4],
Max HP + 200
Max SP + 20
If upgrade level is +7 or higher,
Reduces damage taken from Demi-Human race enemies by 10%.

Hunter Bonus
Max HP + 200
Reduces the SP cost of skills by 5%.

For every upgrade level of Valkyrie Knife [4],
Int + 2
Dex + 2

Dancer and Bard Bonus
ATK + 100
This item is indestructible in battle.

For every upgrade level of Valkyrie Knife [4],
Aspd + 10%
Dex - 1 for every 10 base Dex.

Thief Bonus
Max SP + 100
MATK + 150

For every upgrade level of Valkyrie Knife [4],
Increases critical damage on targets by 1%.

A knife forged by Odin's Valkyrie and tempered in the wind. It's so strong and sharp that even in the hands of a novice it will be a serious threat.
---------------------
MATK +50.

[When used by Novice Jobs]
ATK +100, MATK +150.
Max HP +300, Max SP +300.
SP consumption -5%.
Cannot be destroyed.

[For every refine level above 6]
MATK +15
INT +2, DEX +2, Critical Rate +7.
ASPD +10%
Max HP +200, Max SP +20 additionally.
Critical Damage +1%,
DEX -1 for every 10 DEX Base Points.

[When refined to +7 or higher]
Damage taken from Demi-Human monsters -10%.
---------------------
[When used by Mage Jobs]
Max HP +200, Max SP +20 for every refine level.

[When refined to +7 or higher]
Damage taken from Demi-Human monsters -10%.
---------------------
[When used by Archer Jobs]
Max HP +200.
SP consumption -5%.
INT +2, DEX +2 for every refine level of the item.
---------------------
[When used by Bard/Dancer Jobs]
ATK +100.
Cannot be destroyed.
[For every refine level of the item]:
ASPD +10%
DEX -1 for every 10 DEX Base Points.
---------------------
[When used by Thief Jobs]
MATK +150, Max SP +100.
Critical Damage +1% for every refine level of the item.
---------------
Weight: 10
Weapon level: 4
Required Level: 70
Jobs: Novice Jobs, Swordsman Jobs, Archer Jobs, Thief Jobs, Merchant Jobs, Mage Jobs, Ninja Jobs, Merchant Jobs, Soul Linker Jobs

Not specified

Flags
Can be added to a player buying store? No
Summons monster? No
Is part of a container? No
Has unique stack? No
Binds on equip? No
Announces drop? No
Is consumed on use? Yes
Has drop effect? No
Stacking
Not specified
Usage
Not specified
Trade
Override Not specified
Can be dropped? Yes
Can be traded? Yes
Can be traded with partner? Yes
Can be sold to NPC? Yes
Can be placed in cart? Yes
Can be placed in storage? Yes
Can be placed in guild storage? Yes
Can be sent by mail? Yes
Can be put in auction? Yes
Delay
Not specified
.@r = getrefine();
.@b = readparam(bDex)/10;
if (BaseClass == Job_Novice) {
   bonus bMaxHP,300+(200*.@r);
   bonus bMaxSP,300+(20*.@r);
   bonus bBaseAtk,100;
   bonus bMatk,150+(15*.@r);
   bonus bUseSPrate,-5;
   bonus bUnbreakableWeapon;
   bonus bInt,2*.@r;
   bonus bDex,(2*.@r)-(.@r*.@b);
   bonus bCritical,7*.@r;
   bonus bAspdRate,10*.@r;
   bonus bCritAtkRate,.@r;
}
if (BaseClass == Job_Thief) {
   bonus bMaxSP,100;
   bonus bMatk,150;
   bonus bCritAtkRate,.@r;
}
if (BaseClass == Job_Mage) {
   bonus bMaxHP,200*.@r;
   bonus bMaxSP,20*.@r;
}
if (BaseJob == Job_Hunter) {
   bonus bMaxHP,200;
   bonus bUseSPrate,-5;
   bonus bInt,2*.@r;
   bonus bDex,2*.@r;
}
if (BaseJob == Job_Bard || BaseJob == Job_Dancer) {
   bonus bBaseAtk,100;
   bonus bAspdRate,10*.@r;
   bonus bUnbreakableWeapon;
   bonus bDex,-1*(.@r*.@b);
}
if (.@r>=7 && (BaseClass == Job_Novice || BaseJob == Job_Mage)) {
   bonus2 bSubRace,RC_DemiHuman,10;
}
Script References
getrefine Command
getrefine
Signature:
getrefine()
Description:
function is called. This function is intended for use in item scripts.
readparam Command
readparam
Signature:
readparam(<parameter number>{,"<character name>"})
readparam(<parameter number>{,<char_id>})
Description:
This function will return the specified stat of the invoking character, or, if a character name or character id is specified, of that player. The stat can either be a number or parameter name, defined in ''. Some example parameters: StatusPoint, BaseLevel, SkillPoint, Class, Upper, Zeny, Sex, Weight, MaxWeight, JobLevel, BaseExp, JobExp, NextBaseExp, NextJobExp, Hp, MaxHp, Sp, MaxSp, BaseJob, Karma, Manner, bVit, bDex, bAgi, bStr, bInt, bLuk, Ap, MaxAp All of these also behave as variables, but don't expect to be able to just 'set' them - some will not work for various internal reasons. Example 1: Using this particular information as a function call is not required. Typing this will return the same result: Example 2: You can also use this command to get stat values.
Example:
// Returns how many status points you haven't spent yet.
mes "Unused status points: " + readparam(9);
mes "Unused status points: " + StatusPoint;
if (readparam(bVit) > 77)
mes "Only people with over 77 Vit are reading this!";
bDex Item Bonus
bDex
Signature:
bonus bDex,n;
Description:
DEX + n
if Command
if
Signature:
if (<condition>) <statement>;
Description:
This is the basic conditional statement command, and just about the only one available in this scripting language. The condition can be any expression. All expressions resulting in a non-zero value will be considered True, including negative values. All expressions resulting in a zero are false. If the expression results in True, the statement will be executed. If it isn't true, nothing happens and we move on to the next line of the script. For more information on conditional operators see the operators section above. bothering to store it in a specific variable: More examples of using the 'if' command in the real world: Example 1: Example 2: Notice that examples 1 and 2 have the same effect. Example 3: Example 4: Example 5: See 'strcharinfo' for an explanation of what this function does. Example 6: Using complex conditions. The script engine also supports nested 'if' statements: If the condition isn't met, it'll do the action following the 'else'. We can also group several actions depending on a condition: Remember that if you plan to do several actions upon the condition being false, and you forget to use the curly braces (the { } ), the second action will be executed regardless the output of the condition, unless of course, you stop the execution of the script if the condition is true (that is, in the first grouping using a return; , and end; or a close; ) Also, you can have multiple conditions nested or chained.
Example:
if (1)  mes "This will always print.";
if (0)  mes "And this will never print.";
if (5)  mes "This will also always print.";
if (-1) mes "Funny as it is, this will also print just fine.";
if (strcharinfo(0) == "Daniel Jackson") mes "It is true, you are Daniel!";
.@answer = 1;
input .@input;
if (.@input == .@answer)
close;
mes "Sorry, your answer is incorrect.";
close;
.@answer = 1;
input .@input;
if (.@input != .@answer)
mes "Sorry, your answer is incorrect.";
close;
.@count++;
mes "[Forgetful Man]";
if (.@count == 1) mes "This is the first time you have talked to me.";
if (.@count == 2) mes "This is the second time you have talked to me.";
if (.@count == 3) mes "This is the third time you have talked to me.";
if (.@count == 4) {
mes "This is the fourth time you have talked to me.";
mes "I think I am getting amnesia, I have forgotten about you...";
.@count = 0;
}
close;
mes "[Quest Person]";
if (countitem(512) < 1) {  // 512 is the item ID for Apple, found in db/item_db.yml
mes "Can you please bring me an apple?";
close;
}
mes "Oh, you brought an Apple!";
mes "I didn't want it, I just wanted to see one.";
close;
mes "[Person Checker]";
if ($@name$ == "") {  // global variable not yet set
mes "Please tell me someones name";
next;
input $@name$;
$@name2$ = strcharinfo(0);
mes "[Person Checker]";
mes "Thank you.";
close;
}
if ($@name$ == strcharinfo(0)) {  // player name matches $@name$
mes "You are the person that " + $@name2$ + " just mentioned.";
mes "Nice to meet you!";
// reset the global variables
$@name$ = "";
$@name2$ = "";
close;
}
mes "You are not the person that " + $name2$ + " mentioned.";
close;
mes "[Multiple Checks]";
if (@queststarted == 1 && countitem(512) >= 5) {
mes "Well done, you have started the quest and brought me 5 Apples.";
@queststarted = 0;
delitem 512,5;
close;
}
mes "Please bring me 5 apples.";
@queststarted = 1;
close;
if (<condition>)
dothis;
else
dothat;
if (<condition>) {
dothis1;
dothis2;
} else {
dothat1;
dothat2;
dothat3;
}
if (<condition 1>)
dothis;
else if (<condition 2>) {
dothat;
end;
} else
dothis;
bMaxHP Item Bonus
bMaxHP
Signature:
bonus bMaxHP,n;
Description:
MaxHP + n
bMaxSP Item Bonus
bMaxSP
Signature:
bonus bMaxSP,n;
Description:
MaxSP + n
bBaseAtk Item Bonus
bBaseAtk
Signature:
bonus bBaseAtk,n;
Description:
Basic attack power + n
bMatk Item Bonus
bMatk
Signature:
bonus bMatk,n;
Description:
Magical attack power + n
bUseSPrate Item Bonus
bUseSPrate
Signature:
bonus bUseSPrate,n;
Description:
SP consumption + n%
bUnbreakableWeapon Item Bonus
bUnbreakableWeapon
Signature:
bonus bUnbreakableWeapon;
Description:
Weapon cannot be damaged/broken by any means
bInt Item Bonus
bInt
Signature:
bonus bInt,n;
Description:
INT + n
bCritical Item Bonus
bCritical
Signature:
bonus bCritical,n;
Description:
Critical + n
bAspdRate Item Bonus
bAspdRate
Signature:
bonus bAspdRate,n;
Description:
Attack speed + n%
bCritAtkRate Item Bonus
bCritAtkRate
Signature:
bonus bCritAtkRate,n;
Description:
Increases critical damage by +n%
bSubRace Item Bonus
bSubRace
Signature:
bonus3 bSubRace,r,x,bf;
Description:
+x% damage reduction against race r with trigger criteria bf
Not specified
Script References

No documented script references were detected.

Not specified
Script References

No documented script references were detected.

Not specified

Not specified

Not specified

Not specified

Not specified

Not specified

Not specified

Refine Group Item Level Refineable Weapon Level Armor Level Details
Refine Weapon 4 Yes 4 Not specified Details

Not specified