Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

[Guide] How to Convert Server Code into ClientSide Code

Joined
Nov 1, 2009
Messages
842
Reaction score
276
ok i will explain,
this issue never been discussed here.

first you must know every item code have a default code or definite code.

in client side item.edf, all item have a definite code.
Code:
if = 0
iu = 1
il = 2
ig = 3
is = 4
ih = 5
iw = 6
id = 7
ik = 8
ii = 9
ia = 10
ib = 11
im = 12
ip = 13
ie = 14
it = 15
io = 16
ir = 17
ic = 18
in = 19
iy = 20
iz = 21
iq = 22
ix = 23
ij = 24
gt = 25
tr = 26
sk = 27
ti = 28
ey = 29
re = 30
bx = 31
fi = 32
un = 33
rd = 34
lk = 35
cu = 36

ok, we start for analyze the code
example, iyyyy23

we need to separate all code like this
Code:
[B]iy-y-y-y-23[/B]

when we see the code at the top iy is 20, now we have analyze for y-y-y-23

all alphabet have a number for decimal
Code:
a = 0
b = 1
c = 2
..
..
..
..
z = 25

Now we sort all these figures
so y-y-y-23 will like this 24-24-24-23,

first number we need to add with 192
and you will see like this
Code:
[B](192+24)24-24-23 [/B]

and we got
216-24-24-23

convert all number code from alphabet to hex, except, the rearmost from two numbers
like this
Code:
[B] D8-18-18-23[/B]

now we got Client Code for iyyyy23 is $D8181823

and now for SQL Code number, just Convert Hex Number to Decimal From $D8181823

Will be Like This
Code:
[B]3625457699[/B]


Hope this will be help you..


Thx, Great novanakal



Here's i put the table for Item Code from Bin Source


Item Equip Item Code
CDPT_FACE0
CDPT_UPPER1
CDPT_LOWER2
CDPT_GLOVES3
CDPT_SHOES4
CDPT_HELMET5
CEPT_WEAPON6
CEPT_SHIELD7
CEPT_CLOAK8
IEPT_RING9
IEPT_AMULET10
IEPT_BULLET11
IEPT_WORKTOOL12
IEPT_POTION13
IEPT_ETC14
IEPT_BATTERY 15
IEPT_ORE 16
IEPT_INGOT 17
IEPT_FORCE18
IEPT_UNIT 19
IEPT_LOOT 20
IEPT_MAP 21
IEPT_RETURN 22
IEPT_DUNGEON 23
IEPT_ANIMUS 24
IEPT_GUARD_TOWER 25
IEPT_UNIT_HELMET 26
IEPT_UNIT_UPPER_PART 27
IEPT_UNIT_LOWER_PART 28
IEPT_UNIT_ARMS 29
IEPT_UNIT_SHOULDER 30
IEPT_UNIT_BACKPACK 31
IEPT_UNIT_BULLET 32
IEPT_ITEM_WORK 33


Original Source
Code:
// Character Default Part Type
#define MAX_DEFAULT_PART			( 6 )
#define CDPT_FACE					0
#define CDPT_UPPER_PART				1
#define CDPT_LOWER_PART				2
#define CDPT_GLOVES					3
#define CDPT_SHOES					4
#define CDPT_HELMET					5

//------------------------------------------------------------------------------
// Character Equip Part Type
#define MAX_EQUIP_PART				( 9 )
#define CEPT_FACE					CDPT_FACE
#define CEPT_UPPER_PART				CDPT_UPPER_PART
#define CEPT_LOWER_PART				CDPT_LOWER_PART
#define CEPT_GLOVES					CDPT_GLOVES
#define CEPT_SHOES					CDPT_SHOES
#define CEPT_HELMET					CDPT_HELMET
#define CEPT_WEAPON					6
#define CEPT_SHIELD					7
#define CEPT_CLOAK					8
#define CEPT_HAIR					MAX_EQUIP_PART	// hair는 클라이언트에서만 사용됨 => IEPT_RING과 값이 겹치지만 캐릭터의 생성시 데이터 세팅에만 사용하므로 상관없음 => 단순히 플레이어의 렌더링과 애니메이션시에만 쓰인다.

//------------------------------------------------------------------------------
// Item Equip or Possession Type ( 아이템의 장착 혹은 소유 형태에 따른 타입 )
#define MAX_ITEM_TYPE				( 26 + 8 )		// 항상 + 8 이다.
#define IEPT_FACE					CEPT_FACE
#define IEPT_UPPER_PART				CEPT_UPPER_PART
#define IEPT_LOWER_PART				CEPT_LOWER_PART
#define IEPT_GLOVES					CEPT_GLOVES
#define IEPT_SHOES					CEPT_SHOES
#define IEPT_HELMET					CEPT_HELMET
#define IEPT_WEAPON					CEPT_WEAPON
#define IEPT_SHIELD					CEPT_SHIELD
#define IEPT_CLOAK					CEPT_CLOAK
#define IEPT_RING					9
#define IEPT_AMULET					10
#define IEPT_BULLET					11
#define IEPT_WORKTOOL				12
#define IEPT_POTION					13
#define IEPT_ETC					14
#define IEPT_BATTERY				15
#define IEPT_ORE					16
#define IEPT_INGOT					17
#define IEPT_FORCE					18
#define IEPT_UNIT					19
#define IEPT_LOOT					20
#define IEPT_MAP					21
#define IEPT_RETURN					22
#define IEPT_DUNGEON				23
#define IEPT_ANIMUS					24
#define IEPT_GUARD_TOWER			25
#define IEPT_UNIT_HELMET			26				// Unit Part 데이터부터는 클라이언트 전용임.
#define IEPT_UNIT_UPPER_PART		27
#define IEPT_UNIT_LOWER_PART		28
#define IEPT_UNIT_ARMS				29
#define IEPT_UNIT_SHOULDER			30
#define IEPT_UNIT_BACKPACK			31
#define IEPT_UNIT_BULLET			32
#define IEPT_ITEM_WORK				33				// 아이템 제작 데이터는 항상 제일 마지막 ( 원래는 아이템 데이터가 아니지만, 편의상! )
 
Junior Spellweaver
Joined
Dec 14, 2008
Messages
108
Reaction score
79
I wrote an excel Server item code to Client Converter.


Here is the link to file.


Here is my virus scan


Thanks, Novanakal and Anyone else who contributed to figuring out the Conversion!!!
 
Last edited:
Joined
Apr 9, 2012
Messages
2,356
Reaction score
440
ah, now i know why csc converter and lot of tools here were wrong when it comes to converting from server code to client code...

because every code with "i" in the first name, it use 192
and the other have :
gt 160
tr 112
sk 96
ti 112
ey 128
re 80
bx 80
fi 144
un 128
rd 80
lk 240
cu [STRIKE]251[/STRIKE] 96



see attachment, you can download excel with more accurate for converting serverside code to client code,

PS :
  • sheet 3 contain all data you might want to look at it,
  • sheet 2 contain all calculation, sorry, i have to protect that sheet.hahahaha, because my calculation were so Ducking horrible, so i'm shy with the formula in it.wkwkwkwkwk
  • Sheet 1 contain input and output, you only need to edit column A to convert,
  • you could convert up to 1000 code at once...
  • dont you ever ever ever using cut and paste or the code will screw up...
  • i use excel 2013, not sure it would work with bellow version of excel :p:
  • ​i did something wrong with coupon item, it should be 96 instead of 251, so this one is not recommended to use for coupon item.
 

Attachments

You must be registered for see attachments list
Last edited:
Skilled Illusionist
Joined
May 4, 2014
Messages
307
Reaction score
30
why not just use CSCconverter that was released in the release selection?
 
Joined
Apr 9, 2012
Messages
2,356
Reaction score
440
why not just use CSCconverter that was released in the release selection?
you didnt read do you? :D:
try open csc converter,
and type : tr00001
and compare with the picture my post above or compare it to item.edf clientside trap code...
try gtbb001
sklu001
too...
csc converter are all messed up...
^^7
my excel seem to be more accurate...
 
Joined
Apr 9, 2012
Messages
2,356
Reaction score
440
ah o.o i just look at the ncounts and match them in the item.edf heh
you did that? :O:
what if you have 200 item code to convert? @@
that mean you had to check each of them, so you have so many times after all...
or what if you want to add new item and new code tr00099 for example?
you couldn't just type tr00099 to your csc converter and expect it give you the right code :lol:
 
Skilled Illusionist
Joined
May 4, 2014
Messages
307
Reaction score
30
why would i check them all are u crazy 98% of them can be converted by csc converter those that cant i use item.edf to obtain them theres really no need for all these useless steps o.o... and i dont add new items or new codes not my thing to do theres plenty of unused codes already in the files and anyways adding new items is a waste of time because when u do you will end up breaking the balance of things. hell balance is already broken past level 55
 
Joined
Apr 9, 2012
Messages
2,356
Reaction score
440
you know that is not the issue here, how you dont want to add new item doesnt really matter, and csc converter not doing 98%,
it can't convert siegekit, guardtower, trap, recovery pill, ticket, and even "box item" correctly...
and still lot of the other item...
sometimes i do want to add new item for dummies purpose, such as for module, instead of sacrifice box already in it, i would prefer create my own box for the module, it doesnt really matter if you dont,
eveyone have their own ways...
imagine you want to add all trap, siege, box in the same NPC, total of 200 item,
then would you look on item.edf one by one?
i know you would say you will never do that, but that is just a case :p:
why would you use bad converter when there's a good and instant converter with accuracy close to 100%? :p:
it's up to you and up to your choice tho'
:p:
 
Skilled Illusionist
Joined
May 4, 2014
Messages
307
Reaction score
30
shrugs no idea lol ill try your tool and see how it does i just did it this other way by using ncounts for so long i got used to it and can do it pretty quicky just as i have been doing for my 223 server / client
 
Junior Spellweaver
Joined
Feb 14, 2013
Messages
172
Reaction score
19
ah, now i know why csc converter and lot of tools here were wrong when it comes to converting from server code to client code...

because every code with "i" in the first name, it use 192
and the other have :
gt 160
tr 112
sk 96
ti 112
ey 128
re 80
bx 80
fi 144
un 128
rd 80
lk 240
cu 251



see attachment, you can download excel with more accurate for converting serverside code to client code,

PS :
  • sheet 3 contain all data you might want to look at it,
  • sheet 2 contain all calculation, sorry, i have to protect that sheet.hahahaha, because my calculation were so Ducking horrible, so i'm shy with the formula in it.wkwkwkwkwk
  • Sheet 1 contain input and output, you only need to edit column A to convert,
  • you could convert up to 1000 code at once...
  • dont you ever ever ever using cut and paste or the code will screw up...
  • i use excel 2013, not sure it would work with bellow version of excel :p:

Thank you for help me fo fix client code for thread http://forum.ragezone.com/f479/release-server-dat-client-edf-1101310/ :eek:tt: but i'm confused for traps and ticket, and I test coupon "cu" = 251 not same by default ccr codes but if 96 its same (CMIIW)

Sorry bad my english
 

Attachments

You must be registered for see attachments list
Joined
Apr 9, 2012
Messages
2,356
Reaction score
440
Newbie Spellweaver
Joined
Apr 4, 2009
Messages
39
Reaction score
2
Untitled - [Guide] How to Convert Server Code into ClientSide Code - RaGEZONE Forums

Hi can anyone can explain it to me in more simpliest way, How it all over 216 become D8? ,
 

Attachments

You must be registered for see attachments list
Junior Spellweaver
Joined
Nov 22, 2013
Messages
102
Reaction score
9
View attachment 159599

Hi can anyone can explain it to me in more simpliest way, How it all over 216 become D8? ,
216 is decimal (base 10) D8 is hexadecimal (base 16).
Easy demostration:
1. Open up the calculator that comes with windows.
2. Change the settings to be set to Programmer.
3. When the input is "decimal" type in a decimal value and the calculator will automatically show the to hex value.
 
Back
Top