well i mean to read to see idea how it getting read, and not actually use it.
anyways to read string (probably, should actually test), i cant tell "Position" number because ur server positions seems odd to me.
String(PChar(Cardinal(p2) + Position))
Because you don't need to be a developer to realize that "the variable can be only null at this time", means that the variable on top of that warning is assigned null and haven't change.
In addition both of you are wrong. Changing the abnormal duration won't affect the buff time individually. What you want to dig in is the following method:
public void applyEffects(final L2Character effector, final L2Character effected, final boolean instant, final int abnormalTime)