Hello there, Zero here
Currently our new rpg-based server venomousrpg is looking for a custom-coded shield system.
We believe that - asides from the cooldown-mechanic that we can fix quite easily ourselves - one of the big reasons why so many people dislike 1.9+ pvp is the new shielding mechanic. It's just bland and lacks any form of skill, as players can just block any incoming damage and wait for their opponent to either lose interest or be attacked by a backup-force. If you have ever tried to block an incoming attack in reallife with any sort of shield, you know that it drains your stamina extremely quickly and is by far “absorbing” any damage (potentially breaking your bones if the blow is heavy enough).
We propose the following mechanic in order to not only balance but also add a skill-component to the use of shields:
Explanation & definition of variables
When blocking, a player sees a stamina-bar displayed in his bossbar. This will show his current shield-value. This value will decrease over time, decreasing faster the longer the player is blocking.
Base_start_value (x) (defined in config, the same for every player): 100
Def_start_value
Dmg_crushing_bonus (a): ({lvl_mmocore_class_attacker}/{lvl_mmocore_class_victim} * ({xp_level_attacker}/5)^2
Default_time_drain (d): y - (time_blocked_in_seconds)^4
Total_drain_new_value (Yn
Default_stamina_regen (r): Yn
Rem_def_value (q) = Yn
If a player dies, they only drop their xp aswell as a % of the money they carry on them (20-50%), making pvp less of a devastating moment. This should encourage players to fight more regularly in dungeons, as they do not risk losing everything - but they can gain an additional bonus by robbing a part of the reward their foe got from completing the dungeon etc.
With this formula, the higher the discrepancy of levels between two opposing players, the quicker a shield becomes useless, forcing players to actually combat each other and avoid combat with too higher level classes instead of just spamming their skills and wasting time. Carrying much exp with you now adds a certain reward for risk element, as you have higher defense and quicker regen, however are at risk of losing more!
On hit 1, the value is Y (if the stamina is full), on hit 2 it is Yn(1), then Yn(2) and so forth.
If Yn
If Yn
If Yn
This adds a tactical element to the usage of a shield. Brainlessly blocking will only lead to the victim having absolutely no chance - and since the drain-speed increases as time goes by, this will quickly screw them over. However a player may choose to instantly go into his “rage” mode, making the hunted become the hunter and giving them a chance to defeat an even higher leveled enemy if they don’t expect it.
Example (with numbers):
Class_level_attacker: 200
DMG_per_hit_attacker: 1500
Class_level_victim: 160
XP_level_victim: 50
XP_level_attacker: 50
y_base_victim: 100 * 160 * (50/10) = 80’000
Dmg_multiplier_attacker: (200/160)^2 = 1.5625
Yn(1) = 80’000 - 5^4 - (1500*1.5625*10) = 55’937.5
55’937.5/80’000 = 0.699 = 69.9 = 70% > cancel damage, continue with Yn(2)
Yn(2) = 55’937.5 - 10^4 - (1500*1.5625*10) = 22’500
22’500/80’000 = 0.28125 = 28.1% > cancel damage, continue with Yn(3)
Yn(3) = 22’500 - 3^4 - (1500*1.5625*10) = -1018.5
Yn(3) <= 0 -> stop blocking, playsound (breaking block) to attacker, apply effects to victim
Block is crushed, shield is on cooldown until it recovers 50% of stamina
If player stops blocking before Yn
Plugin has to be 1.15.2 compatible, an either support has to be included or sourcecode sold. Budget is negotiable, we were thinking about something between 30 to 70 USD (depending on speed & execution) + bonus of communication is well and plugin works properly.
Plugin must be rather lightweight or at least efficient in what it is doing.
If interested, add me on discord
HRZNzero#0001 on discord
Sincerely
Zero, Founder of VRPG
