Packet Parser|Tokenizer (unknown/unsupported packets)

Forum closed. All further discussion to be discussed at https://github.com/OpenKore/

Moderators: Moderators, Developers

nightfury008
Noob
Noob
Posts: 3
Joined: 21 Feb 2013, 23:00
Noob?: Yes

Re: Packet Parser|Tokenizer (unknown/unsupported packets)

#201 Post by nightfury008 »

Server: pRO (official)
serverType: 20
Kore version: OpenKore what-will-become-2.1
Packetswitch(es): 09A0 (before connecting to character server)
Type of warning: Packet Parser: Unknown switch: xxxx
Kaspy
Halfway to Eternity
Halfway to Eternity
Posts: 398
Joined: 08 Jun 2012, 15:42
Noob?: No
Location: Brazil

Re: Packet Parser|Tokenizer (unknown/unsupported packets)

#202 Post by Kaspy »

Raider wrote: @KeplerBR, just a question: Is it possible to detect the serverType while extracting recvpackets?
I forgot.
I believe this is what you need.
Image
Raider
The Kore Devil
The Kore Devil
Posts: 672
Joined: 22 Feb 2013, 03:40
Noob?: No
Location: The Netherlands

Re: Packet Parser|Tokenizer (unknown/unsupported packets)

#203 Post by Raider »

KeplerBR wrote:
Raider wrote: @KeplerBR, just a question: Is it possible to detect the serverType while extracting recvpackets?
I forgot.
I believe this is what you need.
Packets
(Reliable)
Since there are packets being continually introduced, you may inspect packets (and packet lengths) used on the server (either from already generated recvpackets.txt or from warnings on unknown packets) and compare that with serverType's data in openkore sourec --> SOURCE :D .
As I have read this my question is if it would be possible to let a packet extractor determine what serverType the client uses by examining the packet and packet lenghts?
nightfury008
Noob
Noob
Posts: 3
Joined: 21 Feb 2013, 23:00
Noob?: Yes

Re: Packet Parser|Tokenizer (unknown/unsupported packets)

#204 Post by nightfury008 »

Server: pRO (official)
serverType: 20
Kore version: OpenKore what-will-become-2.1
Packetswitch(es): 09A0 (after connecting to character server)
Type of warning: Packet Parser: Unknown switch: xxxx
Kaspy
Halfway to Eternity
Halfway to Eternity
Posts: 398
Joined: 08 Jun 2012, 15:42
Noob?: No
Location: Brazil

Re: Packet Parser|Tokenizer (unknown/unsupported packets)

#205 Post by Kaspy »

nightfury008 wrote:Server: pRO (official)
serverType: 20
Kore version: OpenKore what-will-become-2.1
Packetswitch(es): 09A0 (after connecting to character server)
Type of warning: Packet Parser: Unknown switch: xxxx
Try to build the solution that the Eternel made ​​for iRO.
Image
Raider
The Kore Devil
The Kore Devil
Posts: 672
Joined: 22 Feb 2013, 03:40
Noob?: No
Location: The Netherlands

Re: Packet Parser|Tokenizer (unknown/unsupported packets)

#206 Post by Raider »

Private server
kRO_RagexeRE_2009_11_04a
r8390

Packet Parser: Unknown switch: 0439
0439 will show up after using the item "Old Blue Box"


Packet Parser: Unknown switch: 07FA
07FA will shop up after using Enchant Deadly Poison skill.
Kaspy
Halfway to Eternity
Halfway to Eternity
Posts: 398
Joined: 08 Jun 2012, 15:42
Noob?: No
Location: Brazil

Re: Packet Parser|Tokenizer (unknown/unsupported packets)

#207 Post by Kaspy »

Raider wrote:Private server
kRO_RagexeRE_2009_11_04a

Packet Parser: Unknown switch: 07FA
07FA will shop up after using Enchant Deadly Poison skill.
Your ServerType is wrong, because the packet is used only in 07fa dates starting from 17/11/2009 (in normal situations), but I decided to do an update on it because it was incomplete.

Thank the developers rAthena because I used all of it based on the source.
Image
hateleaver
Noob
Noob
Posts: 1
Joined: 28 Mar 2013, 04:53
Noob?: No

Re: Packet Parser|Tokenizer (unknown/unsupported packets)

#208 Post by hateleaver »

server: mRO <english free server>: chinese
serverType: 14
Kore version: openkore_ready
Packet Switch: 097A (after login )
type of warning: Packet Parser: Unknown switch: 097A
deesaster
Noob
Noob
Posts: 1
Joined: 25 Apr 2013, 16:52
Noob?: Yes

Re: Packet Parser|Tokenizer (unknown/unsupported packets)

#209 Post by deesaster »

Can you please help me with this please? Tried spending many hours on it to work but still the same =(

Dreamworks RO
master_version 87
version 29
serverType kRO_RagexeRE_2012_04_10a

Kore Version: openkore_ready

Type of warning: Packet Tokenizer: Unknown switch: 0857 & 0856

*It keeps getting disconnected from the Map Server*
*I've tried using the klab's v3 Packet Extractor, but it did not go too well, JCV's didn't cooperate well too*

Thank you!
Dark Airnel
Been there done that!
Been there done that!
Posts: 133
Joined: 09 Oct 2009, 01:43
Noob?: No

Re: Packet Parser|Tokenizer (unknown/unsupported packets)

#210 Post by Dark Airnel »

Code: Select all

master_version 14
version 54
serverType kRO_RagexeRE_2012_04_10b #this is highly modified because the server has unique packets.
PEViewer shows that the file was created July 12, 2012

I am using SVN r8580

I received these error:

Code: Select all

#Packet Parser: Unknown switch: 0983
The error appear every time Kore detects that someone including itself change status (e.g Blessing, Action Delay etc). However, Kore does not seem to see what status was changed. It cannot detect even it's own statuses.

I edited RagexeRE_2012_04_10b.pm and added the following lines:

Code: Select all

sub new {
	my ($class) = @_;
	my $self = $class->SUPER::new(@_);
	my %packets = (
		'0983' => ['actor_status_active', 'v a4 C V4', [qw(type ID flag tick unknown1 unknown2 unknown3)]], # 25 personal modification
		'0977' => ['attack'], #personal modification
	);

	foreach my $switch (keys %packets) {
		$self->{packet_list}{$switch} = $packets{$switch};
	}
	my %handlers = qw(
		actor_status_active 0983
		attack 0977
	);
	$self->{packet_lut}{$_} = $handlers{$_} for keys %handlers;
	
	return $self;
}
Now it detects all statuses (other actors and himself) except for the statuses brought by skills such as Sling Item which usually appear as "Sling ItemDelay" or "name of someskillDelay"

Here is what is shown on my console:

Code: Select all

You are now attacking Monster Petite (2)
You are casting Sling Item on Monster Petite (2) (Delay: 0ms)
You are now: Unknown 1369Delay (Duration: 1s) #This would have been "You are now: Sling ItemDelay (Duration: 1s)"
You are now: Action Delay (Duration: 0.273s)
[100/ 97] You use Sling Item (Lv: 65534) on Monster Petite (2) (Dmg: 2878)
(Delay: 273ms) (HP: 678/3556)
You use Sling Item on Monster Petite (2) (Lv: 1)
You use Sling Item on Monster Petite (2) (Lv: 1)
You are no longer: Action Delay
You are no longer: Unknown 1369Delay #This would have been "You are no longer: Sling ItemDelay"
The bot works fine since the 1 second delay for Sling Item is just nothing but for skills with long delay such as "Muchanage" or "Gentle Touch - Revitalize" which should be shown as "MuchanageDelay" and "Gentle Touch - RevitalizeDelay", it might cause problems.

I patterned the changes I made from the file RagexeRE_2009_01_21a.pm:

Code: Select all

sub new {
	my ($class) = @_;
	my $self = $class->SUPER::new(@_);
	my %packets = (
		'043F' => ['actor_status_active', 'v a4 C V4', [qw(type ID flag tick unknown1 unknown2 unknown3)]], # 25
		# //0x0444,-1
		# //0X0445,10
	);

	foreach my $switch (keys %packets) {
		$self->{packet_list}{$switch} = $packets{$switch};
	}

	return $self;
}
I am assuming that the # 25 represents the packet length but looking at my recvpackets.txt it shows:

Code: Select all

0983 29 29 1
What else do I need to change to make it show the skill-specific delay? Is it an issue with wrong unpacking? Please help.