Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Item Proc'ing - Needs to be corrected for Alchemical Throwning Phials to work #1922

Closed
ghost opened this issue May 21, 2019 · 4 comments · Fixed by #2043
Closed

Item Proc'ing - Needs to be corrected for Alchemical Throwning Phials to work #1922

ghost opened this issue May 21, 2019 · 4 comments · Fixed by #2043
Assignees

Comments

@ghost
Copy link

ghost commented May 21, 2019

Bug Report or Feature Request (mark with an x)

- [X] bug report -> please search issues before submitting
- [ ] feature request

Repro steps.

Use a weapon with a ProcSpell that is a debuff with a character that doesn't have the associated magic skill trained. Item ProcSpell will most likely be resisted, in current master.

The log given by the failure.

No server log given by the failure

Desired functionality.

wielder.TryCastSpell(spell, target, wielder) in TryProcItem() in WorldObject_Weapon.cs should be changed to TryCastSpell(spell, target, this) to allow the the proc'ed spell to be cast from the perspective of the item and its own ItemSpellCraft, rather than the item's wielder.

@gmriggs
Copy link
Collaborator

gmriggs commented May 21, 2019

I agree in theory that the 'source' of the spell would be the item that cast it

During initial dev/testing of ItemProc, this switched between item.TryCastSpell and wielder.TryCastSpell a few times. If I remember correctly, there were 1 or 2 bugs with item.TryCastSpell that need to be fixed

One that I remember is the message that is broadcast to the target. It would say things like 'Sword cast spell on you' or 'Aetheria cast spell on you', which seemed very unclear (not sure how it was in retail). If the proc successfully landed, the wielder also would not receive any messages about it, without additional logic added

I forget if that was the only thing that needed investigated, but I'm thinking there might also have been something with EnchantmentManager sources

Anyway yeah this needs further investigated, just saying it's not as simple as changing wielder.TryCastSpell to TryCastSpell here, and to be aware of the other possible bugs that would need to be looked into for that

@gmriggs
Copy link
Collaborator

gmriggs commented May 21, 2019

One thing to possibly look out for with item.TryCastSpell / item sources is the enchantment duration

If an item is the enchantment source, a lot of times the enchantment duration will be set to -1

I remember adding some special logic to work around this for Aetheria, and if all ItemProcs are casting the spell from item source, this part should be tested thoroughly

@ghost
Copy link
Author

ghost commented May 28, 2019

Correct source and target routing and messaging will be needed for ProcSpell for the Alchemical Throwing Phials to work correctly that are to be added in content patch ACEmulator/ACE-World-16PY-Patches#132

@ghost ghost changed the title Item Proc'ing Item Proc'ing - Needs to be corrected for Alchemical Throwning Phials to work Jun 6, 2019
@gmriggs gmriggs self-assigned this Jun 25, 2019
@gmriggs
Copy link
Collaborator

gmriggs commented Jun 25, 2019

Fixed in #2043

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant