# *NEW* QUEST SKILL - EQUIPMENT SWAP - SKILL BUTTON

## Recommended Posts

Hello dear members, it has been a long time since my last login here, and I came back with my recent customization, it's damm good, that once finished in my test server confirmed that was 100% functional, with and with no issues , I decided to share....

This Skill provides the same function than the equipment swap tab, but instead of opening the inventory and aim with the cursor to the "change" button!, you can do the same even faster, with a custom skill icon and just one tip of your finger.

***------- Trunk Side -------***

1- Go to your skill_db.txt and make sure to find the skill #5067.  If you are using pre-renewal config, you may export the bellow skill line to the pre-re/skill_db.txt file instead.

5067,0,6,4,0,0x1,0,1,1,no,0,0x1,0,none,0,0x0,            ALL_EQSWITCH,Equip Switch

2- Now that the skill is implemented, you need to add the timers in the db file skill_cast_db.txt, this can´t be ignored, you may add the skill line.  I gave the skill 10 seconds cooldown, but you can do it at your like.

//-- ALL_EQSWITCH
5067,0,0,0,0,0,10000

3- Most important part,  can´t be ignored,  add  the skill line for every job in the   skill_tree.txt   file. just like this:

//Novice
0,5067,1,0,0,0,0,0,0,0,0,0,0 //-- ALL_EQSWITCH#Equip Switch#

//Swordman
1,5067,1,0,0,0,0,0,0,0,0,0,0 //-- ALL_EQSWITCH#Equip Switch#

//Magician
2,5067,1,0,0,0,0,0,0,0,0,0,0 //-- ALL_EQSWITCH#Equip Switch#

//Archer
3,5067,1,0,0,0,0,0,0,0,0,0,0 //-- ALL_EQSWITCH#Equip Switch#

And keep going until you add the skill to every job available in your server. (watch out the job# id, for the copy paste, don´t forget to add the correct number).

***------- Client Side --------***

- You need the icon sprites for the skill and the item bmp, you can make a prettier one, in my case I recycled Taekwon skill icon Counter Kick Stance and recolored.

You will find it attached, well,  This .spr and .act files must be added inside the drop sprite folder  the route is:   data/sprite/¾ÆÀÌÅÛ

- Now for dragging the skill icon from the skill tab, you need the item bmp, also attached, and It has to be added inside the item folder. The route is:

\data\texture\À¯ÀúÀÎÅÍÆäÀÌ½º\item

---EDITING THE LUAS---

- The very first thing we are going to edit is the skilltreeview.lub
this file is found inside the skillinfoz folder at this route: \data\luafiles514\lua files\skilltreeview.lub

Please only add the skill for the novice tree, watch out the key and please note that there is not comma at the last line added skill, if you wonder about the #41 is the bottom right corner penultimate slot in the alt+s skill tab.

SKILL_TREEVIEW_FOR_JOB = {
[JOBID.JT_NOVICE] = {
[0] = SKID.NV_BASIC,
[7] = SKID.NV_FIRSTAID,
[41] = SKID.ALL_EQSWITCH
},

- Second Step editing the luas belongs to the file skillid.lub
this file is found inside the skillinfoz folder at this route: \data\luafiles514\lua files\skillinfoz

And you have to add the skill  ALL_EQSWITCH = 5067

Example:

WE_CALLALLFAMILY = 5063,
WE_ONEFOREVER = 5064,
WE_CHEERUP = 5065,
ALL_EQSWITCH = 5067,

- Third step for the luas, the skilldescript.lub
This file is located in \data\luafiles514\lua files\skilldescript.lub

In this file you have to create a description for the new skill implemented in this case the ALL_EQSWITCH
This is an example of mine, watch out the keys and the commas, you can make a good description with your own taste.:

[SKID.ALL_PRONTERA_RECALL] = {
"Max Level: 2",
"Skill Form: ^339900Supportive^000000",
"Description: ^777777Teleport to Prontera, 15 minutes after use delay.^000000"
},
[SKID.ALL_EQSWITCH] = {
"Switch Equipment",
"Max Level: 1",
"^CC3399Requirement: Finish Quest^000000",
"Skill Form: ^339900Active^000000",
"Target: ^777777Self^000000",
"Description: ^777777Swap you actual equipment with the one placed in the alternative equip tab.^000000"
},

[SKID.ALL_THANATOS_RECALL] = {
"Max Level: 1",
"Skill Form: ^339900Supportive^000000",
"Description : ^777777Teleport to Thanatos, 5 minutes after use delay.^000000"
},

- Finally the Last Step and most most most important, the skillinfolist.lub
This file is located in \data\luafiles514\lua files\skillinfolist.lub

We have to add the new skill to this file, EXAMPLE:

[SKID.ALL_GLASTHEIM_RECALL] = {
"ALL_GLASTHEIM_RECALL",
MaxLv = 1,
SpAmount = { 0 },
bSeperateLv = false,
AttackRange = { 1 }
},
[SKID.ALL_EQSWITCH] = {
"ALL_EQSWITCH",
SkillName = "Equip Switch",
MaxLv = 1,

Type = "Quest",
SpAmount = { 0 },
bSeperateLv = false,
AttackRange = { 1 }
}

}

- In this case I added the skill at the last in the bottom, so you watch out the keys and the commas placed properly to avoid client side error,
VERY VERY VERY IMPORTANT, you see the Type = "Quest" bold in green? Please, do not ignore that line, ... That line is very very important, and the client use that line, to avoid investing job skill points in that quest skill.

Now, for getting the skill active, you can edit the npc global funcion and add it to the platinium skills:

Example:

//////////////////////////////////////////////////////////////////////////////////
// Gives attached player their Platinum Skill based on their class.
//////////////////////////////////////////////////////////////////////////////////
function    script    F_GetPlatinumSkills    {
skill "NV_FIRSTAID",1,SKILL_PERM;
skill "ALL_EQSWITCH",1,SKILL_PERM;

or make your own script to get the skill permantent.

Now The Testing In Game:

OPTION 2:

For Experienced Users, if you want to save hours on this....  just go to the shortcut settings and add a shortcut to replace equip.

Edited by iraciz
• 8
• 1
##### Share on other sites

On 3/15/2020 at 8:14 AM, iraciz said:

Hello dear members, it has been a long time since my last login here, and I came back with my recent customization, it's damm good, that once finished in my test server confirmed that was 100% functional, with and with no issues , I decided to share....

This Skill provides the same function than the equipment swap tab, but instead of opening the inventory and aim with the cursor to the "change" button!, you can do the same even faster, with a custom skill icon and just one tip of your finger.

***------- Trunk Side -------***

1- Go to your skill_db.txt and make sure to find the skill #5067.  If you are using pre-renewal config, you may export the bellow skill line to the pre-re/skill_db.txt file instead.

5067,0,6,4,0,0x1,0,1,1,no,0,0x1,0,none,0,0x0,            ALL_EQSWITCH,Equip Switch

2- Now that the skill is implemented, you need to add the timers in the db file skill_cast_db.txt, this can´t be ignored, you may add the skill line.  I gave the skill 10 seconds cooldown, but you can do it at your like.

//-- ALL_EQSWITCH
5067,0,0,0,0,0,10000

3- Most important part,  can´t be ignored,  add  the skill line for every job in the   skill_tree.txt   file. just like this:

//Novice
0,5067,1,0,0,0,0,0,0,0,0,0,0 //-- ALL_EQSWITCH#Equip Switch#

//Swordman
1,5067,1,0,0,0,0,0,0,0,0,0,0 //-- ALL_EQSWITCH#Equip Switch#

//Magician
2,5067,1,0,0,0,0,0,0,0,0,0,0 //-- ALL_EQSWITCH#Equip Switch#

//Archer
3,5067,1,0,0,0,0,0,0,0,0,0,0 //-- ALL_EQSWITCH#Equip Switch#

And keep going until you add the skill to every job available in your server. (watch out the job# id, for the copy paste, don´t forget to add the correct number).

***------- Client Side --------***

- You need the icon sprites for the skill and the item bmp, you can make a prettier one, in my case I recycled Taekwon skill icon Counter Kick Stance and recolored.

You will find it attached, well,  This .spr and .act files must be added inside the drop sprite folder  the route is:   data/sprite/¾ÆÀÌÅÛ

- Now for dragging the skill icon from the skill tab, you need the item bmp, also attached, and It has to be added inside the item folder. The route is:

\data\texture\À¯ÀúÀÎÅÍÆäÀÌ½º\item

---EDITING THE LUAS---

- The very first thing we are going to edit is the skilltreeview.lub
this file is found inside the skillinfoz folder at this route: \data\luafiles514\lua files\skilltreeview.lub

Please only add the skill for the novice tree, watch out the key and please note that there is not comma at the last line added skill, if you wonder about the #41 is the bottom right corner penultimate slot in the alt+s skill tab.

SKILL_TREEVIEW_FOR_JOB = {
[JOBID.JT_NOVICE] = {
[0] = SKID.NV_BASIC,
[7] = SKID.NV_FIRSTAID,
[41] = SKID.ALL_EQSWITCH
},

- Second Step editing the luas belongs to the file skillid.lub
this file is found inside the skillinfoz folder at this route: \data\luafiles514\lua files\skillinfoz

And you have to add the skill  ALL_EQSWITCH = 5067

Example:

WE_CALLALLFAMILY = 5063,
WE_ONEFOREVER = 5064,
WE_CHEERUP = 5065,
ALL_EQSWITCH = 5067,

- Third step for the luas, the skilldescript.lub
This file is located in \data\luafiles514\lua files\skilldescript.lub

In this file you have to create a description for the new skill implemented in this case the ALL_EQSWITCH
This is an example of mine, watch out the keys and the commas, you can make a good description with your own taste.:

[SKID.ALL_PRONTERA_RECALL] = {
"Max Level: 2",
"Skill Form: ^339900Supportive^000000",
"Description: ^777777Teleport to Prontera, 15 minutes after use delay.^000000"
},
[SKID.ALL_EQSWITCH] = {
"Switch Equipment",
"Max Level: 1",
"^CC3399Requirement: Finish Quest^000000",
"Skill Form: ^339900Active^000000",
"Target: ^777777Self^000000",
"Description: ^777777Swap you actual equipment with the one placed in the alternative equip tab.^000000"
},

[SKID.ALL_THANATOS_RECALL] = {
"Max Level: 1",
"Skill Form: ^339900Supportive^000000",
"Description : ^777777Teleport to Thanatos, 5 minutes after use delay.^000000"
},

- Finally the Last Step and most most most important, the skillinfolist.lub
This file is located in \data\luafiles514\lua files\skillinfolist.lub

We have to add the new skill to this file, EXAMPLE:

[SKID.ALL_GLASTHEIM_RECALL] = {
"ALL_GLASTHEIM_RECALL",
MaxLv = 1,
SpAmount = { 0 },
bSeperateLv = false,
AttackRange = { 1 }
},
[SKID.ALL_EQSWITCH] = {
"ALL_EQSWITCH",
SkillName = "Equip Switch",
MaxLv = 1,

Type = "Quest",
SpAmount = { 0 },
bSeperateLv = false,
AttackRange = { 1 }
}

}

- In this case I added the skill at the last in the bottom, so you watch out the keys and the commas placed properly to avoid client side error,
VERY VERY VERY IMPORTANT, you see the Type = "Quest" bold in green? Please, do not ignore that line, ... That line is very very important, and the client use that line, to avoid investing job skill points in that quest skill.

Now, for getting the skill active, you can edit the npc global funcion and add it to the platinium skills:

Example:

//////////////////////////////////////////////////////////////////////////////////
// Gives attached player their Platinum Skill based on their class.
//////////////////////////////////////////////////////////////////////////////////
function    script    F_GetPlatinumSkills    {
skill "NV_FIRSTAID",1,SKILL_PERM;
skill "ALL_EQSWITCH",1,SKILL_PERM;

or make your own script to get the skill permantent.

Now The Testing In Game:

don't modify SRC ?

##### Share on other sites

10 hours ago, coperation said:

don't modify SRC ?

Not! Just do what he taught.

##### Share on other sites

Good day sirs, please note that, if you are using recent rathena revisions,  the skill already exist in skill_db.yml

because of this, the step 1 and 2 are not neccesary and can be skipped from this guide.

  - Id: 5067
Name: ALL_EQSWITCH
Description: Equip Switch
MaxLevel: 1
TargetType: Self
DamageFlags:
NoDamage: true
Cooldown: 2000
CastTimeFlags:
IgnoreDex: true
IgnoreStatus: true
IgnoreItemBonus: true
CastDelayFlags:
IgnoreDex: true
IgnoreStatus: true
IgnoreItemBonus: true

##### Share on other sites

Awesome guide! thank you for this @iraciz it is possible that this skill can be a quest skill before the player can use it.

##### Share on other sites

Actually it does,

skill points can't be spent on this skill because is already flagged as quest skill, the only way to get hte skill active is via this script command:

skill "ALL_EQSWITCH",1,SKILL_PERM;

thx all

##### Share on other sites

HI, i did everything and the skill is in server and working, but when i create a novice the basic skills got an issue that make it grow higher than lv 9 and no skillpoint r used to up skill, any help?

##### Share on other sites

There's already a BM shortcut for this under shortcut settings. Unless you dont want that ehich is much easier to use than this.

##### Share on other sites

On 4/20/2020 at 10:54 AM, hannicaldummy said:

HI, i did everything and the skill is in server and working, but when i create a novice the basic skills got an issue that make it grow higher than lv 9 and no skillpoint r used to up skill, any help?

skillinfolist.lua

    [SKID.ALL_EQSWITCH] = {
"ALL_EQSWITCH",
SkillName = "Equip Switch",
MaxLv = 1,
Type = "Quest",
SpAmount = { 0 },
bSeperateLv = false,
AttackRange = { 1 }
}

On 4/21/2020 at 1:47 PM, Haruka Mayumi said:

There's already a BM shortcut for this under shortcut settings. Unless you dont want that ehich is much easier to use than this.

found It

##### Share on other sites

why in my BM dont have that shortcut key?

## Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

×   Pasted as rich text.   Paste as plain text instead

Only 75 emoji are allowed.

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
• Forums