athron
-
Content Count
2 -
Joined
Posts posted by athron
-
-
regarding this http://herc.ws/board/topic/10701-link-item-system/?p=63280when we take a look on console using script e.g.- script catch FAKE_NPC,{ OnAtcommand: debugmes .@atcmd_parameters$[0]; end; OnInit: bindatcmd "catch",strnpcinfo(3)+"::OnAtcommand"; end; }
let's start to type @catch<space> following shit+left click on beretso and chat command shown :@catch <beret>and the result on console like:[Debug]: script debug : 2000000 110022388 : <ITEM>0004811lq'00'00'00'00</ITEM>let's try on +20 beret@catch <+20 beret>and the result on console like:[Debug]: script debug : 2000000 110022388 : <ITEM>0004811lq%0k'00'00'00'00</ITEM>how does it work?yes that's base converted from 10 to 64i have not enought knowledge on C so i tried to encode it using vb like thisPublic Function ConvertBase10$(ByVal d#) Dim S$, t#, i%, l%, bl%, bs$ bs= "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" bl = Len(bs) Do While Val(d) <> 0 t = d i = 0 Do While t >= bl i = i + 1 t = t / bl Loop If i <> l - 1 And l <> 0 Then S = S & String(l - i - 1, Left(bs, 1)) t = Int(t) S = S + Mid(bs, t + 1, 1) d = d - t * (bl ^ i) l = i Loop ConvertBase10 = S End Function
what's that mean?
<ITEM>0004811lq%0k'00'00'00'00</ITEM> vv Equipment Location -> ConvertBase10(256) = 48 <ITEM>0004811lq%0k'00'00'00'00</ITEM> vvv Equipment ID -> ConvertBase10(5712) = 1lq <ITEM>0004811lq%0k'00'00'00'00</ITEM> vv Refine Level -> ConvertBase10(20) = 0k <ITEM>0004811lq%0k'00'00'00'00</ITEM> vv Card on Slot 1 <ITEM>0004811lq%0k'00'00'00'00</ITEM> vv Card on Slot 2 <ITEM>0004811lq%0k'00'00'00'00</ITEM> vv Card on Slot 3 <ITEM>0004811lq%0k'00'00'00'00</ITEM> vv Card on Slot 4 <ITEM>0004811lq%0k'00'00'00'00</ITEM> v dunno about '1' after equipment location. but i think it's alwasy be 1.
we not need to decode, because we just need to send string thar initialized by client to result as item link.
i also tried using :dispbotom "You got 1x <ITEM>0004811lq%0k'00'00'00'00</ITEM>";result is shown "You got <+20 Beret>" clickable in client.also work onannounce "S got 1x <ITEM>0004811lq%0k'00'00'00'00</ITEM>" bc_all;we can also try copy this<ITEM>0004811lq%0k'00'00'00'00</ITEM>
and paste on clientOf course we can make a script and use callfunc butif there any buildin script like this*getitemlinkedmsg <item_id>,<refine>,<card1>,<card2>,<card3>,<card4>;
it would be helpfull.
buildin getitemlinkedmsg
in Suggestions
Posted · Edited by athron
i just tried using ragemu's packet struck on hercules without any problem, except truncated npc string input.
yes, it would be helpfull too if we also have a buildin function :