Dragonis1701

Members
  • Content Count

    94
  • Avg. Content Per Day

    0
  • Joined

  • Last visited

  • Days Won

    1

Dragonis1701 last won the day on August 17 2019

Dragonis1701 had the most liked content!

Community Reputation

7 Neutral

About Dragonis1701

  • Rank
    Santa Poring

Profile Information

  • Gender
    Male
  • Location
    Old Bridge, New Jersey

Recent Profile Visitors

1,993 profile views
  1. I have a home-run server (rAthena from 2016) that runs on the computer I have for daily use. I noticed that after partying in groups of five or more (usually just two active users but the other three being auto-follows) clients will disconnect. This seems to occur after the player stands still for about 30 seconds. I have no idea why it is occurring. I can offer my server files for people who may want to experiment and see what the issue is. If you need any specific information, on the settings, just ask away~ Edit: Some more information: Clients that are logged in but not a part of the party are unaffected by the disconnect. It seems to occur from a lot of non-stop or very few pauses in movement.
  2. Sure. I just had the use script check if the player has a specific card equipped when you use the item. So, if you use a fire elemental resistance potion, I have it check if the player has a pasana card in their armor when they use it. Looks like this: 12118,Resist_Fire,Fireproof Potion,2,2,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ if(getequipcardid(EQI_ARMOR,0) == 4099) { sc_start4 SC_ELEMENTALCHANGE,180000,2,Ele_Fire,1,0; } else { sc_start4 SC_ELEMENTALCHANGE,180000,1,Ele_Fire,1,0; } },{},{} 12119,Resist_Water,Coldproof Potion,2,2,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ if(getequipcardid(EQI_ARMOR,0) == 4089) { sc_start4 SC_ELEMENTALCHANGE,180000,2,Ele_Water,1,0; } else { sc_start4 SC_ELEMENTALCHANGE,180000,1,Ele_Water,1,0; } },{},{} 12120,Resist_Earth,Earthproof Potion,2,2,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ if(getequipcardid(EQI_ARMOR,0) == 4101) { sc_start4 SC_ELEMENTALCHANGE,180000,2,Ele_Earth,1,0; } else { sc_start4 SC_ELEMENTALCHANGE,180000,1,Ele_Earth,1,0; } },{},{} 12121,Resist_Wind,Thunderproof Potion,2,2,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ if(getequipcardid(EQI_ARMOR,0) == 4098) { sc_start4 SC_ELEMENTALCHANGE,180000,2,Ele_Wind,1,0; } else { sc_start4 SC_ELEMENTALCHANGE,180000,1,Ele_Wind,1,0; } },{},{}
  3. Having it so that it shows the monster's HP bar to all players that see the mob could work, too, but the reason I want to add these players to the damage log, is so that the hp bar updates when the mob takes damage/is healed. This way it's more fluid looking instead of just showing the HP bar but the bar does not change regardless on if the mob takes damage or not.
  4. Similar but not quite the same as: Is it possible to have the HP bar of a monster display to a party member when one person in the party attacks a mob and update the bar as the mob takes damage? Currently it only updates if the party member also damages the mob but I would like it to update in real-time as the mob is being damaged, for all players in the attacking player's party.
  5. That works perfectly. Is there a way to make it so that, if the player is equipped with X element, for example fire, and then uses a fireproof potion, that the player's element becomes fire level 2? Edit: Nevermind. I figured it out.
  6. I wanted to make the elementproof potions a player acquires from the Plasma card similar to as if the player had a card that set their armor to that element. SC_Armor_Element gives a player bonus2 bsubele +75 for three minutes. This has worked fine so far but I ran into a bit of a hiccup. If a player has another bsubele boost, such as Valk Shield's +20, instead of it being an 80% reduction in damage, it is a 95% reduction in damage from that element. Is there a way to easily have SC_Armor_element set an armor as a temporary element or is there no way around it? I experimented before with it and tried to get the potion to set an armor element for a set period of time but didn't succeed in my attempts. I would succeed in getting the potion to set the element but the element would not return to normal after the potion wore off.
  7. Oh, I'm sorry. For some reason I really believed that Kyrie Eleison had a successful cast animation for the priest for some reason. Thank you for all your help~
  8. Sorry. Skill.c: case PR_KYRIE: case MER_KYRIE: case SU_TUNAPARTY: case SU_GROOMING: case SU_CHATTERING: clif_skill_nodamage(bl,bl,skill_id,skill_lv, sc_start(src,bl,type,100,skill_lv,skill_get_time(skill_id,skill_lv))); break; case AL_ANGELUS: case PR_MAGNIFICAT: case PR_GLORIA: case SN_WINDWALK: case CASH_BLESSING: case CASH_INCAGI: case CASH_ASSUMPTIO: case WM_FRIGG_SONG: if( sd == NULL || sd->status.party_id == 0 || (flag & 1) ) clif_skill_nodamage(src, bl, skill_id, skill_lv, sc_start(src,bl,type,100,skill_lv,skill_get_time(skill_id,skill_lv))); else if( sd ) party_foreachsamemap(skill_area_sub, sd, skill_get_splash(skill_id, skill_lv), src, skill_id, skill_lv, tick, flag|BCT_PARTY|1, skill_castend_nodamage_id); break; case BS_ADRENALINE: case BS_ADRENALINE2: case BS_WEAPONPERFECT: case BS_OVERTHRUST: if (sd == NULL || sd->status.party_id == 0 || (flag & 1)) { int weapontype = skill_get_weapontype(skill_id); if (!weapontype || !dstsd || pc_check_weapontype(dstsd, weapontype)) { clif_skill_nodamage(src, bl, skill_id, skill_lv, sc_start2(src, bl, type, 100, skill_lv, (src == bl) ? 1 : 0, skill_get_time(skill_id, skill_lv))); } } else if (sd) { party_foreachsamemap(skill_area_sub, sd,skill_get_splash(skill_id, skill_lv), src,skill_id,skill_lv,tick, flag|BCT_PARTY|1, skill_castend_nodamage_id); } break; I changed the first "bl" after clif_skill_nodamage to src, so that players in the same party that are affected by these skills no longer do an animation for receiving these party buffs. This works fine but Kyrie is different, being a cast on target skill vs. a party one. This makes it so that Kyrie will always give a visual animation to the priest, as well, if I want to avoid the cast animation on the targeted player. Clif.c if (skill_id == PR_MAGNIFICAT) { clif_specialeffect(dst, 76, AREA); } if (skill_id == AL_ANGELUS) { clif_specialeffect(dst, 41, AREA); } if (skill_id == PR_GLORIA) { clif_specialeffect(dst, 75, AREA); } if (skill_id == SN_WINDWALK) { clif_specialeffect(dst, 389, AREA); } if (skill_id == BS_ADRENALINE) { clif_specialeffect(dst, 98, AREA); } if (skill_id == BS_ADRENALINE2) { clif_specialeffect(dst, 98, AREA); } if (skill_id == BS_WEAPONPERFECT) { clif_specialeffect(dst, 103, AREA); } if (skill_id == BS_OVERTHRUST) { clif_specialeffect(dst, 128, AREA); } if (skill_id == PR_KYRIE) { clif_specialeffect(dst, 112, AREA); } If I try to use clif.c to return fail to skip the animation, it looks weird on the player's screen and also takes away the cast animation from the priest, which I would prefer to keep. It seems I can't really take away the visual animation from over the priest's head without having more knowledge on how the entire thing works.
  9. Thank you, this is what I needed. I kept the changes I made to skill.c because I still want the caster to have the animation, just not the party members/target. I added: if (skill_id == PR_MAGNIFICAT) { clif_specialeffect(dst, 76, AREA); } for each skill that caused an animation in clif.c under clif_skill_nodamage. It all works great and looks good in-game but, of course, there's one oddity; Kyrie Eleison. Now the target is no longer hit with an animation but now the priest that casts Kyrie Eleison also has the Kyrie Eleison effect player over their head, as well as their target. How do I fix that?
  10. Update: Took away that code from clif.c and instead changed the clif_skill_nodamage's first "bl" in magnificat and other like buffs skills that target a party member, to src in skill.c. Now it shows the buff animation over the buffer but not over the party member. It's strange but Assumptio uses the same method but Assumptio's animation plays over the targeted player. Why is that?
  11. I'm trying to figure out how to remove the player doing their standard skill animation from, for example, Magnificat but maintaining the visual effect of Magnificat when it affects a player. Is that possible? I have added if (skill_id == PR_MAGNIFICAT) return fail; under clif_skill_nodamage but that takes away both the player animation and the visual animation from Magnificat. Is there a way to keep one but not the other? Edit: To add a bit more clarity, I want to know if it's possible to have magnificat's animations work like blessing, where it shows the blessing on the player but does not trigger an animation that stops movement or attacking.
  12. I just implemented a feature I've been putting off scripting because I'm bad at scripting, Infusions. I took all cards that are "Get X item when you kill Y" and made them available for infusing into those closed card slots on Accessories and Headgears. This cards are Headgear: Cramp Dryad Giant Hornet Knocker Leaf Cat Leib Olmai Myst Case Accessory: Anopheles Armeyer Dinze Baroness of Retribution Blazer Cloud Hermit Dragon Egg Rice Cake Boy Galapago Gargoyle Gremlin Grove Hermit Plant Jing Guai Marin Mimic Orc Archer Plasma Raydric Archer Sage Worm Sea-Otter Sleeper Snowier Spring Rabbit Stem Worm Tengu Wraith It costs 400k and each armor piece can hold three, if slotted, and four if not slotted. I feel this gives some use to these cards as most of the time they're just not good enough or the item they provide is not good enough to warrant sacrificing the slot during normal gameplay. If any of the cards had an additional effect aside from the bonus item, the extra effect was removed.
  13. I believe dispell already does remove bard/dancer skills when the player is outside the effect area. Buff icons are kind of difficult because of how the status icons are coded unless it was changed from when I last looked. It will give your player a buff icon that lasts three minutes but the icon will disappear if the player is outside the song effect area for twenty seconds.
  14. For the status.c, 1st part: Case BL_Pet, BL_Mob, BL_Mer and BL_Elem is for Pets, Monsters, Mercenaries and Elementals. 2nd part: BL_Hom is for Homunculi and BL_PC is for players. Change the: return status->int_ + (status->int_ / 2) + (status->dex / 5) + (status->luk / 3) + (level / 4); to: return status->int_ + (status->int_ / 6) * (status->int_ / 6) + (status->dex * 3 / 5) Then for the max magic part change the same portion, the part under BL_PC from: return status->int_ + (status->int_ / 2) + (status->dex / 5) + (status->luk / 3) + (level / 4); to: return status->int_ + (status->int_ / 5) * (status->int_ / 5) + (status->luk * 3 / 5)