Few Combatlog Suggestions
FlamingLumberjack opened this issue ยท 9 comments
I suggest you give slowness or stop a player entirely for a few seconds before they can lift off with a broom or use the Recall spell so combatants can catch up to you and stop you from teleporting away or flying off. Currently, it takes time for the Recall spell to work but if you keep running away your combatant still can't catch up to you even if there is a timer on the teleport and currently, broomsticks take off almost instantly leaving combatants no time to catch up to you at all. In my opinion, I think broomsticks should have slowness and Recalls should stop you from moving entirely.
Also quick note I don't know how to use labels or maybe I just can't.
https://media.discordapp.net/attachments/718480624805085286/873062631928373248/unknown.png
Also forgot to mention that I think you should buff the exp you get from using magic spells since it gives way too little right now.
You can adjust the SP cooldown, this is the easiest way to speed up progression- there are instructions here: https://github.com/elBukkit/MagicPlugin/wiki/SpellPoints
Recall cancels when you get damaged, it shouldn't be too hard to hit someone trying to flee?
The slowness suggestion is interesting though, I'll give that some thought. I have also considered cancelling Recall when you move, but feel like I'd personally find that too annoying.
I probably won't change broomsticks myself, I usually don't allow them in PvP areas at all - but I understand that's not practical if your whole server is pvp. You can edit the spell with /mconfig editor spell broom
, it wouldn't be hard to add a Delay action and/or PotionEffect (for slowness)- let me know if you'd like help with that!
Oh wait and for Aurelium Skills maybe only give exp when attacking a mob.
Looks right, you shouldn't have to mess with liftoff_duration, that's just how long velocity is applied to you to get you off the ground. Let me know if it doesn't work.
Thanks for the Aurelium feedback! I would not be wanting to make a change to the defaults to let people spam-cast to earn though, so I guess I'll leave the scale where it's at. I think you can add cast_on_no_target: true
to get that behavior if you want it, though.
/mconfig configure spell default cast_on_no_target true
will set that as the default for all spells.
/mconfig configure spell override earns 1
to make every spell only earn 1 SP, then change the AS scale to 1 .. should get you what you want, I think.
I'm assuming that delaying broom lift off is liftoff_duration: and I meant buff exp gain from spells for Aurelium Skills by the way. Anyways thank you for your help once again. ๐
Oh! Ok- you can do /meditor config aurelium_skills
to edit that config. xp_earn_from_sp
is the section you're looking for.
I honestly had no idea how to balance that, it currently gives 50% of SP earn. If you have some general guidance on what that should be (twice that? more?) I'd love to change the defaults, and would appreciate it!
As for the broom, adding a delay will be a little more complicated. You have to mess with the logic of the spell a bit. If you find the actions section, and "cast" under that, you need to add some actions to the beginning of the list. Something like this:
# ...
cast:
- class: PotionEffect
add_effects:
slow: 4
duration: 2 seconds
- class: Delay
delay: 2 seconds
# what was here before follows, the rest of the spell logic
- class: ChangeContext
That will slow them and wait for 4 seconds before they lift off .. the hardest part is making sure everything lines up correctly, the spell editor can help somewhat with that.
Hopefully not too daunting, let me know how it goes!
For the Aurelium Skills I would prefer if it gave 1 sorcery exp every time you casted a spell but you would have to make it a lot more if it only gave exp every time you got SP. For the broom is this correct?
cast:
- class: PotionEffect
add_effects:
slow: 4
duration: 2 seconds
- class: Delay
delay: 2 seconds
# what was here before follows, the rest of the spell logic
- class: ChangeContext
target_offset: 0,1,0
ignore_result: true
actions:
- class: Volume
radius: 1
actions:
- class: CheckBlock
allowed: passthrough
fail:
- class: Message
ignore_result: true
message_type: action_bar
message_key: nospace
- class: CastResult
result: no_target
end_result: true
- class: Stop
Also should I change liftoff_duration:
?
All of the default spells are here on github: https://github.com/elBukkit/MagicPlugin/blob/master/Magic/src/main/resources/examples/survival/spells/broom.yml
So instead of changing cast_on_no_target, change earns_cooldown to 0 if you want to earn SP on every successful cast.