Today tRO was updated the 13.3 patch and Ragexe.exe was changed
Not only Ragexe.exe changed but charBlockSize was changed too.
tRO need to run poseidon server for pass the gameguard,
So I need to change the poseidon source code, right ?
=================================================
Pic: Problem
=================================================
I read topic http://forums.openkore.com/viewtopic.php?f=37&t=12596
and I think I have to change pack of data but My skill in packet is newbie
so, Please advice how to change this src from charBlockSize = 112 to 116
Code: Select all
} elsif (($switch eq '0065') || ($switch eq '0275') || ($msg =~ /^$packed_switch$accountID$sessionID$sessionID2\x0\x0.$/)) { # client sends server choice packet
my $exp = pack("V", 0);
my $zeny = pack("V", 0);
my $exp_job = pack("V", 0);
my $lvl_job = pack("v", 70);
my $hp = pack("v", 0x0fff);
my $hp_max = $hp;
my $sp = pack("v", 0x0fff);
my $sp_max = $sp;
my $job_id1 = pack("v", 0);
my $job_id2 = pack("v", 23);
my $hairStyle = pack("v", 16);
my $level = pack("v", 99);
my $head_low = pack("v", 0);
my $head_top = pack("v", 5016);
my $head_mid = pack("v", 0);
my $hairColor = pack("v", 6);
my $charName1 = pack("a24", "Poseidon");
my $charName2 = pack("a24", "Poseidon Dev");
my ($str, $agi, $vit, $int, $dex, $luk) = (99, 99, 99, 99, 99, 99);
my $charStats = pack("C*", $str, $agi, $vit, $int, $dex, $luk);
my $data;
if($clientdata{$index}{kRO}) { #Packet 006B of kRO differs from that of other servers
$client->send($accountID);
$data = pack ("H272", "6b0088000100000064000000007fffffbc000000000000004cf1d00080020000000000002300000001000000000000000000000000000000000000000000000002004c0000004c00000016001600960006001700000006000000000000000000000001000000b1e2beefbcd3b1d7c0dabdc42100000000000000000000000c0901010c0100000100");
} else {
$data = $accountID .
pack("v2 x20", 0x6b, 0xEC) .
$charID . $exp . $zeny . $exp_job . $lvl_job .
pack("x24") . $hp . $hp_max . $sp . $sp_max .
pack("x2") . $job_id1 . $hairStyle .
pack("x2") . $level .
#pack("x2") . $head_low . pack("x2") . $head_top . $head_mid . $hairColor .
pack("C*", 0x01, 0x00, 0x38, 0x00, 0x00, 0x00, 0xA0, 0x00, 0x9E, 0x00, 0x06, 0x00) .
#pack("C*", 0x01, 0x00, 0x38, 0x00, 0x00, 0x00, 0x46, 0x00, 0x03, 0x00, 0x06, 0x00) .
pack("x2") . $charName1 . $charStats . pack("v1", 0) .
$charID . $exp . $zeny . $exp_job . $lvl_job .
pack("x24") . $hp . $hp_max . $sp . $sp_max .
pack("x2") . $job_id2 . $hairStyle .
pack("x2") . $level .
#pack("x2") . $head_low . pack("x2") . $head_top . $head_mid . $hairColor .
pack("C*", 0x01, 0x00, 0x39, 0x00, 0x00, 0x00, 0x9F, 0x00, 0x98, 0x00, 0x06, 0x00) .
pack("x2") . $charName2 . $charStats . pack("v1", 1);
# NOTE: ideally, all character slots are filled with the same character, for idiot-proofing
# NOTE: also, the character's appearance may be made to be modifiable
}
$client->send($data);
# save servers.txt info
if ($switch ne '0065') {
$clientdata{$index}{gameLogin_packet} = $switch;
} else {
undef $clientdata{$index}{gameLogin_packet};
}
} elsif ($switch eq '0066') { # client sends character choice packet