It is probably array indexes that are invalid.
It must be.
Sometimes other stuff seems to be causing that too iirc, but really rarely.
Even though, I now need to
WTF:
procedure ActivateServer();
begin
BioKills[Killer]:=BioKills[Killer]*0;
end;
Next thing, do not use ID as a global var (If you use your brain you know what may can happen >_>)
Also you need to check if a player is active before doing something.. (AppOnIdle.., aswell everywhere else in the loops)
Also take a look at your indenting, looks horrible at some places