Try this.
Index: java/org/l2jmobius/gameserver/network/serverpackets/PartySpelled.java
===================================================================
--- java/org/l2jmobius/gameserver/network/serverpackets/PartySpelled.java (revision 17216)
+++ java/org/l2jmobius/gameserver/network/serverpackets/PartySpelled.java (working copy)
@@ -50,9 +50,22 @@
ServerPackets.PARTY_SPELLED.writeId(this, buffer);
buffer.writeInt(_creature.isServitor() ? 2 : _creature.isPet() ? 1 : 0);
buffer.writeInt(_creature.getObjectId());
- buffer.writeInt(_effects.size());
- for (BuffInfo info : _effects)
+ // C4 does not support more than 20 effects in party window, so limiting them makes no difference.
+ // This check ignores first effects, so there is space for last effects to be viewable by party members.
+ // It may also help healers be aware of cursed members.
+ int size = 0;
+ if (_effects.size() > 20)
{
+ buffer.writeInt(20);
+ size = _effects.size() - 20;
+ }
+ else
+ {
+ buffer.writeInt(_effects.size());
+ }
+ for (; size < _effects.size(); size++)
+ {
+ final BuffInfo info = _effects.get(size);
if ((info != null) && info.isInUse())
{
buffer.writeInt(info.getSkill().getDisplayId());