Наткнулся случайно на этот скрипт. Довольно интересная реализация идеи с анимированным титулом.
Код:
//Crests are captured from RequestSetPledgeCrest and copied verbatim (minus the spaces)
//Set your char nick in 'name'
//Crest change delay should be set to at least 3000 (3s) to work
//Script is enabled/disabled (toggle) with /socialvictory in game
const
name='YOURNICK';
crestnr=2;
d = 3000;
crest1='0900010000444453207C000000071008001000000010000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000040000004458543100000000000000000000000000000000000000000000000000000000000000000000000000000000FFFF000000000000FFFF000000000000FFFF000000000000FFFF00000000000000D9F0DE005040400099F0DE00050404E0A3000855E74DC7E0BC0000555E5654E0AE00991595959500D9E0A6045F0C7C00B9E0DE101510550081E0FF01010101008300003515255500510083040406000099E0DE1010500000D9E0DE01010500';
crest2='0900010000444453207C000000071008001000000010000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000040000004458543100000000000000000000000000000000000000000000000000000000000000000000000000000000FFFF000000000000FFFF000000000000FFFF000000000000FFFF0000000000000000F7BD00004040DDFF0000555558600000FFFF00000824BCF7000055555B5CDEFF000095151535FFFF0842CF2737A7DDFF2000890509B37EEF000056555556BDF7000025255555DDFF0000C0DE5555F7BD000058565555F7BD000054575555';
var
y:integer;
c,t,stop: integer;
n:integer;
procedure Init; //will be called on script initialization
begin
c:=0;
t:=0;
stop:=1;
n:=0;
end;
function GetTickCount(): integer;
var
lib,res: integer;
begin
lib := LoadLibrary('kernel32.dll');
res := CallFunction(lib, 'GetTickCount', 0, [nil]);
FreeLibrary(lib);
result := res;
end;
//Primary part of dcript
//calls alltime when l2ph got new packet
begin
if (FromClient) and (pck[1] = #$34) then
begin
y := ReadD(2);
if (y = 3) then
begin
if (stop=0) then
begin
stop:=1;
end
else
begin
stop:=0;
end;
pck := '';
end;
end;
c := GetTickCount()-t;
if (stop = 0) and (c > d) then
begin
t := GetTickCount();
if (n=0) then
begin
buf:= Hstr(Crest1);
n:=1;
end
else if (n=1) then
begin
buf:= Hstr(Crest2);
n:=2;
end;
if (n=crestnr) then n:=0;
SendToServerEx(name);
end;
end.
ps: прошу прощения что не указываю автора, я не знаю кто написал скрипт.