Inventory decoding - part 1 common objects

Added by vanila about 9 years ago

some API functions sends you lists of items in bag, mektoub, appartment ...
basically you retrieve a list of :
<item> some_strange_code </item>

the "some_strange_code" can be as cryptic as "m0751dxafc.sitem" or as straightforward as teddyyubo

there are several ways to decrypt the "strange code" :
- one is to retrieve the item word list file which can be unpacked from some .bnp file ... but I'm not certain it's allowed
- the other is to find out how all this is coded based on known inventories
- the best one would be to use a function of the Ryzom API ... but it doesn't exist (yet?)

using the second method I find out how to decode :
- forage material code
- looted/animal material code
- some common objects (armor, jewel, weapons, tools)

  • Let's start with common object ***

the code is {common objects prefix}{origin}{faction}{object_nature}{skin}.sitem

{prefix} :
every common object starts with the "ic" prefix (I would guess "I" as item and "C" as common)

{origin}
then comes the "origin" of the object :
"m" for matis
"t" for tryker
"z" for zorai
"f" for fyros
I found some "b" and "c" for some no-zone objects.

so for instance every matis common objects starts with the "icm" prefix

{skin}
at the end of the code (before the ".sitem") there might be a skin info on the object :
_1 : skin 1 (normal)
_2 : skin 2 (Medium Quality)
_3 : skin 3 (High Quality)

what remains is not very easy to decrypt even though some rules can be found out (an armor piece always starts with an "a" for instance)
there are two part, the first is optionnal :

{faction}
-Jen and -Duk objects will start with a "kami" ou "karavan" prefix

{object nature}
the second part is a code for the nature of the object :
(sorry it's in french)

$object_nature = array(

// Armor
'abe' => 'bottes de refugi&eacute;',
'age' => 'gants de refugi&eacute;',
'ape' => 'pantalon de refugi&eacute;',
'ase' => 'manches de refugi&eacute;',
'ave' => 'veste de refugi&eacute;',
'acp' => 'robe',
'ahb' => 'bottes lourdes',
'ahg' => 'gants lourds',
'ahh' => 'casque lourd',
'ahp' => 'pantalon lourd',
'ahs' => 'manches lourdes',
'ahv' => 'gilet lourd',
'alb' => 'bottes l&eacute;geres',
'alg' => 'gants l&eacute;gers',
'alp' => 'pantalon l&eacute;ger',
'als' => 'manches l&eacute;geres',
'alv' => 'gilet l&eacute;ger',
'amb' => 'bottes moyennes',
'amg' => 'gants moyens',
'amp' => 'pantalon moyen',
'ams' => 'manches moyennes',
'amv' => 'gilet moyen',
'candy_stick' => 'sucre d\'orge',
// Jewels
'ja' => 'anneau de cheville',
'jb' => 'bracelet',
'jd' => 'diademe',
'je' => 'boucle d\'oreille',
'jp' => 'pendentif',
'jr' => 'anneau',
// One-arm Weapons
'm1bm' => 'massette',
'm1sa' => 'hachette',
'm1pd' => 'dague',
'm1ps' => 'lance',
'm1pse' => 'lance electrique',
'm1psl' => 'lance vivante',
'm1ss' => '&eacute;p&eacute;e',
// two-arm Weapons
'm2bm' => 'masse',
'm2ms' => 'amplificateur',
'm2sa' => 'hache',
'm2sab' => 'hache ardente',
'm2pp' => 'pique',
'm2ppl' => 'pique vivante',
'm2ss' => '&eacute;p&eacute;e 2 mains',
'm2ssb' => '&eacute;p&eacute;e 2 mains ardente',
'm2ssl' => '&eacute;p&eacute;e 2 mains vivante',
'm2ssw' => '&eacute;p&eacute;e 2 mains ondulante',
// Ammunitions
'p1bb' => 'munition contondante de pistolet arbalete',
'p1bp' => 'munition perforante de pistolet arbalete',
'p1bs' => 'munition tranchante de pistolet arbalete',
'p1pb' => 'munition contondante de pistolet',
'p1pp' => 'munition perforante de pistolet',
'p1ps' => 'munition tranchante de pistolet',
'p2ab' => 'munition contondante de mitrailleuse',
'p2ap' => 'munition perforante de mitrailleuse',
'p2as' => 'munition tranchante de mitrailleuse',
'p2bb' => 'munition contondante de fusil arbalete',
'p2bp' => 'munition perforante de fusil arbalete',
'p2bs' => 'munition tranchante de fusil arbalete',
'p2lb' => 'munition contondante de LG',
'p2lp' => 'munition perforante de LG',
'p2ls' => 'munition tranchante de LG',
'p2rb' => 'munition contondante de fusil',
'p2rp' => 'munition perforante de fusil',
'p2rs' => 'munition tranchante de fusil',
// one-arm guns
'r1b' => 'pistolet arbalete',
'r1p' => 'pistolet',
// two-arm guns
'r2a' => 'mitrailleuse',
'r2ab' => 'mitrailleuse ardente',
'r2b' => 'fusil arbalete',
'r2be' => 'arbalete electrique',
'r2bb' => 'arbalete ardente',
'r2bw' => 'arbalete ondulante',
'r2l' => 'LG',
'r2lb' => 'LG ardent',
'r2le' => 'LG electrique',
'r2lw' => 'LG ondulant',
'r2r' => 'fusil',
'r2rb' => 'fusil ardent',
'r2re' => 'fusil electrique',
'r2rw' => 'fusil ondulant',
'ss' => 'bouclier lourd',
// tools
'tammo' => 'outils &agrave; munitions',
'tarmor' => 'outils &agrave; armures',
'tforage' => 'pioche',
'tjewel' => 'outils &agrave; bijoux',
'ttool' => 'outils &agrave; outils',
'tmwea' => 'outils &agrave; armes de m&eacute;l&eacute;e',
'trwea' => 'outils &agrave; armes de tir'
);

some examples :
icmalp_3.sitem => ic (common object) m (matis) alp (armor light pants) _3 (high quality) => matis light armor pants high
ictm1pdw_1.sitem => ic (common object) t (tryker) m1pdw (one-arm weapon dagguer waving) _1 (normal quality) = a tryker waving dagguer


Replies (3)

RE: Inventory decoding - part 1 common objects - Added by Nepherkaan about 9 years ago

To get the full name of an object : http://bmsite.net/temp/ryzom_translate.zip or have a look at this tip (in the answer) : http://dev.ryzom.com/boards/15/topics/291
It works very well (except for the latest objects generated for the Tower event).

Now, thanks for the decoding... really usefull!

RE: Inventory decoding - part 1 common objects - Added by labelotero about 9 years ago

About crafting material :

Harvested : {common objects prefix}{material Code}dxa{origin}{class}.sitem
Looted : {common objects prefix}{material Code}c{mob type}{?}{origin}{class}.sitem

{prefix} :
Every material starts with the "m" prefix

{material code}
A 4 digits code, they are ordered alphabetically : e.g : 0001 = Abhaya, 0006 = Anete ...

{mob type}
"k" for kitin
"h" for herbivore
"c" for carnivore

{?}
One letter, probably a mob identifier

{origin}
then comes the "origin" of the object :
"d" for desert
"f" for forest
"j" for jungle
"l" for lake
"p" for primes roots

{class}
from b01 to f01 -> base, fine, choice, excellent, supreme

RE: Inventory decoding - part 1 common objects - Added by Aeness about 9 years ago

vanila wrote:

the "some_strange_code" can be as cryptic as "m0751dxafc.sitem" or as straightforward as teddyyubo

every common object starts with the "ic" prefix (I would guess "I" as item and "C" as common)

I think IC is rather for Item Craft and M may be for (Raw/Craft) Material.

Anyway, your lists are very useful, Thanks

(1-3/3)