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

Implement skill sleep #477

Draft
wants to merge 12 commits into
base: master
Choose a base branch
from

Conversation

bernatvadell
Copy link
Contributor

Implement Summoner Sleep Skill

https://github.com/orgs/MUnique/projects/3/views/1?pane=issue&itemId=67145119

Tasks

  • Add new stat IsAsleep
  • Implement logic for new stat IsAsleep
  • Update Skills initializer to fix Sleep
  • Create update plugin to fix sleep into existing databases

I have implemented a new RandomElement class that is not being used.
We would have to analyze the best way to make the sleep have a random value for the duration of the magic effect.

@sven-n
Copy link
Member

sven-n commented Sep 3, 2024

Why do we need a random sleep duration? I couldn't find anything about that in the web or other server sources

@bernatvadell
Copy link
Contributor Author

True, it's not random, I was checking the source of a GS and I saw this. I noticed that it doesn't always "sleep", it has a success ratio.

image

How do we implement this? Is there a similar example?

On the other hand, should I delete the new RandomElement class? Or do you think it could be useful at some point?

@sven-n
Copy link
Member

sven-n commented Sep 3, 2024

I don't think we need the RandomElement then.
About the attack success rate: I think it could make sense to add a "Stats.SleepAttackRate" (expected value between 0 and 1) and some AttributeRelationships for that to the character class. It will require some code changes in GameLogic to apply that, too.

@bernatvadell
Copy link
Contributor Author

From what I can see, depending on whether you're attacking a monster or a player, the ratio changes. I understand that we can't manage this use case with a Stat, can we?

@sven-n
Copy link
Member

sven-n commented Sep 3, 2024

Oh yes, well we could add two stats for that. For example, the attack rate has one for pvp and one for pvm as well.

@bernatvadell
Copy link
Contributor Author

I was looking at the architecture of MagicEffectDefinition and I'm thinking about how to make it generic.

Many Summoner effects involve a success ratio when the "Buff" type magic is applied to the enemy.

Do you think it would be convenient to modify this class to optionally include a success ratio specification?

If so, should we use PowerUpDefinition?

On the other hand, do you think it would be interesting to extend AttributeRelationship to be able to indicate if that attribute applies under certain restrictions? For example, being able to restrict that relationship by Target.

This would allow us to modify the formula, without needing to add new "Stats".

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