Skip to content

Quarrel Shooter's skills, except Pavise #337

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

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

Terotrous
Copy link
Contributor

Pavise is so complex and affects so many classes that it will have to be a separate PR.

Adding Rapidfire, Teardown, Running Shot, Caltrop, Stone Picking, and Stone Shot.
Block and Shoot and Kneeling Shot
@exectails
Copy link
Member

exectails commented May 23, 2025

Thanks for the PR. And it's absolutely fine to put Pavise into a separate PR if it's overly complex, but I looked it up out of curiosity. It appears to be a kind of barrier and potentially "attack sponge," do I have that right?

Deploy Pavise
Set up an upright shield to protect yourself from enemy attacks. Enemies without a target will attack the pavise instead.

Based on your wording, I guess the assumption is that we would include special handling in all (ranged?) skills for this? If so, that seems like a maintenance nightmare 🤔 Do you have any more information on the skill and its behavior? Unfortunately I couldn't find any videos exploring how the skill works in detail, but it seems like it could potentially be handled as a buff, modifier, or combat event, where damage is automatically redirected towards the presumed shield monster. Would that seem like a viable implementation?

@Terotrous
Copy link
Contributor Author

The Pavise essentially blocks attacks if it is between you and the source of the attack. The way I believe this would work is something along the lines of "draw a line from the origin point of the attack's hitbox to the target. If there is a Pavise in the way, the Pavise blocks the hit". I had some ideas for how this could feasibly be implemented before but I've kind of forgotten them, maybe I wrote it in the chat history. I also think that possibly Kenedos may have implemented this skill in Laima.

@exectails
Copy link
Member

In that case it would have to be incorporated into the target finding I guess. We do not want to have to implement this into every skill handler, and we already have a mostly streamlined method for finding targets. We'll just need to check for potential obstacles between the attacker and the target.

@Terotrous
Copy link
Contributor Author

For sure, I was instead thinking of the skills that would instead bypass this special logic, of which there will unquestionably be some.

@exectails
Copy link
Member

Do we have any examples of such cases yet? Though if we assume that a handful of skills will simply ignore obstacles, it should be fairly simple to handle these situations on a handler to handler basis, since they ultimately have the control over how they get their targets.

@Terotrous
Copy link
Contributor Author

I feel like I did know of some, but I've been away from it for so long that I've forgotten them, but I agree that these skill handlers will likely just need some special code to ignore the pavise block.

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 this pull request may close these issues.

2 participants