Jump to content

Faust

Members
  • Posts

    16
  • Joined

  • Last visited

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

Faust's Achievements

Santa Poring

Santa Poring (3/15)

  • Collaborator
  • Dedicated
  • First Post
  • Conversation Starter
  • Week One Done

Recent Badges

0

Reputation

  1. Hi, After succesfully creating a passive skill allowing my character to wear any standard weapons and every piece of equipment (based on level restriction) I would like to add more features to it. I would need some help to figure out how to have dynamic script to check and update body type each time the character is equiping a piece of armor, changing his body type from Super Novice to Swordman or Mage based on the armor equiping restriction. I don't want his skill tree or job to be changed, but rather have just the job animation matching the armor the character is wearing. Thanks for your help.
  2. You want to remove if or to simply prevent from being learnable?
  3. You need to find the write file to edit to add your code snippet to give the desired effect, but here the various files i had to modify to make the skill, implement it, and see it in the right skill tab. The effects that i wanted to apply are based on a skill detection, if it has been learned then the character can wear equipment and weapons based on his level, just not the specialized weapons such as gun/bow/whip,etc, which I had to put in pc.cpp. //SUPERNOVICE LINK GIVES PASSIVE ATTRIBUTES // Put before SC_STRIPWEAPON if (pc_checkskill(sd, SN_MASTERY) > 0) { //Spirit of Super Novice equip bonuses. [Skotlex] if (item && (item->equip & (EQP_HELM | EQP_ARMOR | EQP_SHIELD | EQP_GARMENT | EQP_SHOES | EQP_ACC | EQP_ARMS))) { return ITEM_EQUIP_ACK_OK; } if (item->equip & EQP_ARMS && item->type == IT_WEAPON) switch (item->subtype) { //In weapons, the look determines type of weapon. case W_DAGGER: //All level 4 - Daggers case W_1HSWORD: //All level 4 - 1H Swords case W_1HAXE: //All level 4 - 1H Axes case W_MACE: //All level 4 - 1H Maces case W_STAFF: //All level 4 - 1H Staves case W_2HSTAFF: //All level 4 - 2H Staves return ITEM_EQUIP_ACK_OK; } }
  4. So the problem I had was that the pack i found to play RO (Emulator+client) was heavily modified and editing like the standard tutorial wasn't working because of missing files. As long as you have standard pack, everything is pretty straight forward.
  5. So actually Passive skills are simply skills that can't be activated but learned, you need to edit the right file that detects if the skills has been learned and then apply bonus on that basis, here the skill i made using pc.cpp: //SUPERNOVICE LINK GIVES PASSIVE ATTRIBUTES // Put before SC_STRIPWEAPON if (pc_checkskill(sd, SN_MASTERY) > 0) { //Spirit of Super Novice equip bonuses. [Skotlex] if (item && (item->equip & (EQP_HELM | EQP_ARMOR | EQP_SHIELD | EQP_GARMENT | EQP_SHOES | EQP_ACC | EQP_ARMS))) { return ITEM_EQUIP_ACK_OK; } if (item->equip & EQP_ARMS && item->type == IT_WEAPON) switch (item->subtype) { //In weapons, the look determines type of weapon. case W_DAGGER: //All level 4 - Daggers case W_1HSWORD: //All level 4 - 1H Swords case W_1HAXE: //All level 4 - 1H Axes case W_MACE: //All level 4 - 1H Maces case W_STAFF: //All level 4 - 1H Staves case W_2HSTAFF: //All level 4 - 2H Staves return ITEM_EQUIP_ACK_OK; } }
  6. Here the snippet i've added to create a passive skill: //SUPERNOVICE LINK GIVES PASSIVE ATTRIBUTES // Put before SC_STRIPWEAPON if (pc_checkskill(sd, SN_MASTERY) > 0) { //Spirit of Super Novice equip bonuses. [Skotlex] if (item && (item->equip & (EQP_HELM | EQP_ARMOR | EQP_SHIELD | EQP_GARMENT | EQP_SHOES | EQP_ACC | EQP_ARMS))) { return ITEM_EQUIP_ACK_OK; } if (item->equip & EQP_ARMS && item->type == IT_WEAPON) switch (item->subtype) { //In weapons, the look determines type of weapon. case W_DAGGER: //All level 4 - Daggers case W_1HSWORD: //All level 4 - 1H Swords case W_1HAXE: //All level 4 - 1H Axes case W_MACE: //All level 4 - 1H Maces case W_STAFF: //All level 4 - 1H Staves case W_2HSTAFF: //All level 4 - 2H Staves return ITEM_EQUIP_ACK_OK; } }
  7. Thanks to Chat GPT I found how to edit the spell to work as a passive skill as long as it has been learned. You need to go to pc.cpp and edit the part allowing equipment and weapon use: //Spirit of Super Novice equip bonuses. [Skotlex] if (item && (item->equip & (EQP_HELM | EQP_ARMOR | EQP_SHIELD | EQP_GARMENT | EQP_SHOES | EQP_ACC | EQP_ARMS))) { return ITEM_EQUIP_ACK_OK; } if (item->equip & EQP_ARMS && item->type == IT_WEAPON) switch (item->subtype) { //In weapons, the look determines type of weapon. case W_DAGGER: //All level 4 - Daggers case W_1HSWORD: //All level 4 - 1H Swords case W_1HAXE: //All level 4 - 1H Axes case W_MACE: //All level 4 - 1H Maces case W_STAFF: //All level 4 - 1H Staves case W_2HSTAFF: //All level 4 - 2H Staves return ITEM_EQUIP_ACK_OK; } }
  8. Hello, I'm encountering difficulties to create a passive skill that allows a supernovice to wear any weapon and equipment based on the snippet modification of SL_supernovice (soul link super novice spirit). Here the code I found that is working and allows the supernovice to wear any weapon; but range weapons and typical job weapons; and equipment once the skill is cast: if (sd->sc.data[SC_SPIRIT] && sd->sc.data[SC_SPIRIT]->val2 == SL_SUPERNOVICE) { //Spirit of Super Novice equip bonuses. [Skotlex] if (item && sd && sd->status.base_level > 90 && (item->equip & (EQP_HELM | EQP_ARMOR | EQP_SHIELD | EQP_GARMENT | EQP_SHOES | EQP_ACC | EQP_ARMS))) return ITEM_EQUIP_ACK_OK; if (sd->status.base_level > 96 && item->equip & EQP_ARMS && item->type == IT_WEAPON) switch (item->subtype) { //In weapons, the look determines type of weapon. case W_DAGGER: //All level 4 - Daggers case W_1HSWORD: //All level 4 - 1H Swords case W_1HAXE: //All level 4 - 1H Axes case W_MACE: //All level 4 - 1H Maces case W_STAFF: //All level 4 - 1H Staves case W_2HSTAFF: //All level 4 - 2H Staves return ITEM_EQUIP_ACK_OK; } } } I tried to modify the snippet to make the effect to apply as long as the skill is learned, but it seems incorrect: if (pc_checkskill(sd, SL_SUPERNOVICE) > 0) { // Allow equipping of all items specific to the Super Novice class if (item->equip & (EQP_HELM | EQP_ARMOR | EQP_SHIELD | EQP_GARMENT | EQP_SHOES | EQP_ACC | EQP_ARMS)) { return ITEM_EQUIP_ACK_OK; } // Allow equipping specific weapon types regardless of the level if (item->equip & EQP_ARMS && item->type == IT_WEAPON) { switch (item->subtype) { case W_DAGGER: // Daggers case W_1HSWORD: // 1H Swords case W_1HAXE: // 1H Axes case W_MACE: // 1H Maces case W_STAFF: // 1H Staves case W_2HSTAFF: // 2H Staves return ITEM_EQUIP_ACK_OK; } } } And of course the goal is to remove the level restriction for the effect to apply, so the equipment limitation is only based on the level required to wear it. I tried to put the skill in various files such as pc.cpp, status.cpp, skill.cpp, but it doesn't seem to work. If there is a soul that could help me to make this work, i'd be grateful
  9. Would you happen to know which file exactly I have to modify for the 2 first point? I can't find anything neither in db neither in cpp/hpp files. Thanks
  10. Sorry about that, really new to this. Thanks for your help.
  11. Hello, I'm looking for the way to edit super novice spirit skill in 3 ways: - First of all I would like to change the ability of using weapon level 4 only to all weapon level (but keeping current weapon type restriction), - I would like to do the same for each piece of equipment and allow the super novice to use any equipment (potentially putting few restrictions in a second time as well) instead of only any headgear, - Then I would like to change the skill to act as a passive skill instead of requiring to be used as an active skill, similarly to Improve HP recovery in order to have it activated permanently if the skill is unlocked (targeting SN/SNE/HN). If anyone could tell me more about that it would be lovely. Thanks.
  12. Well what I mean by passive is to act like a passive skill, currently it is an active skill that grants attributes when it is activated, I wanted it to act as a passive skill similarly to Increase HP Recovery passive skill, so as long you attribute skill points to it, its features are permanently attributed, no need to cast the spell.
  13. Unfortunately it doesn't seem to do anything, indeed if i click on it nothing happen, but the effect aren't applied anymore (i can't use 4th level weapons anymore).
  14. Hi, can you give me more precision about the thing to change it skill_db.yml? I tried to make some changes that didn't have effect, so I guess that I didn't find the part to change to make it passive. Thanks
  15. Hi, Using the client 2021-11-17_Ragexe_4thjob I don't seem to have a folder called luafiles514 with the mentioned files, but I encounter same problem. Skills that I removed from skill_db.text and skilltree.yml but supposed to be replaced by the aforementioned one's icones.
×
×
  • Create New...