DarkstarProject / darkstar

DEPRECATED - FFXI Server Emulator - See Project Topaz

Home Page:https://github.com/project-topaz/topaz

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[Easy Fix] Aquaveil incorrect functionality

SirGouki opened this issue · comments

I have:

  • searched existing issues (http://github.com/darkstarproject/darkstar/issues/) to see if the issue I am posting has already been addressed or opened by another contributor
  • checked the commit log to see if my issue has been resolved since my server was last updated

Client Version (type /ver in game) : 30191227_0

Source Branch (master/stable) : master (~ 10 Jan 2020)

Additional Information (Steps to reproduce/Expected behavior) :

Aquaveil has slightly incorrect functionality the time is potentially incorrect (needs verification with someone from retail as FFXIclopedia states aquaveil should be 5 minutes max, but the windower spell tracker expects it to last 10 minutes despite even changing the settings for the addon).

The confirmed incorrect functionality is that Aquaveil always drops when preventing interruption. I know that this is incorrect simply because this is not how it ever worked for me on retail, I've never seen it drop upon preventing interruption. Per FFXIclopedia's page on aquaveil, it has a chance to drop, it's not garunteed, but the way its coded into the server (i think its in battleutilities) it always drops once it prevents one interruption. It is also stated that it does have a set number of times it will prevent interruptions, but there's no details for the exact number. As a work around I've commented the drop out for my server, but obviously this may not be correct either.

commented

bg-wiki has better info on aquaveil, looks like other wiki doesn't reflect the changes from the 2010 update

commented

Looks like DSP correctly applies 1-2 interrupts prevented based on skill, and +1 for Emphatikos Rope, Shedir Seraweels, and Vadose Rod. So looks like 4 items are missing mods to increase interrupts, but otherwise it should be working correctly. There's also AQUAVEIL_COUNTER in settings.lua if you want to increase the base amount of interrupts.

what you are remembering is how it used to be. SE changed it. long ago it was just a bonus to preventing interrupt chance, now its more like shadows for your spell interrupts. if you would have been interrupted, aquaviel eats that and your cast finishes instead.

The old version let you easily cap interrupt rate reduction and effectively become unstoppable. I had a set for that and loved it.

My apologies, last I played was ~2015 and I don't remember it working that way for my RDM (88). Maybe thats why the wiki said "may or may not remove the effect"?

commented

I think the "may or may not remove the effect" depends on if you passed the interrupt check or if aquaveil ate it for you, since getting hit isn't always 100% interrupt. If you wouldn't have been interrupted anyway, aquaveil doesn't get removed.

Its worth mentioning that we probably don’t calculate the interrupt rate like retail does and have some static value somewhere for the chance. I know the skill of spells type should be involved somehow but I can’t say what the math is like.

commented

It looks like skill is used in here. The formula used is:
((base interruption rate of 40 + level diff) * skill cap/skill) * ((100 - (meritReduction + Mod::SPELLINTERRUPT)) / 100)
It's supposed to cap at 1% but I don't think that's right.

        // caps, always give a 1% chance of interrupt
        if (check < 1) {
            check = 0;
        }

Should be setting check to 1 not 0, right?

Dunno, glad we already check skill tho, thats further along than I thought we were