Add Armor Part Item
Adding an armor part item in-game
Rough notes, somewhat incomplete, feel free to get this working properly, and clean up this page.
Description
For adding an armor part, you need to add the sitem sheet, as well as the sbrick used for crafting the item.
When the item is sold by an NPC, or created by force in a player inventory, the sitem is crafted with Fine System Raw Material. (system_fine_mp.sitem or something)
Items like materials don't need a craft plan obviously. See relevant source code for a list on what does and what does not.
Craftable items MUST be prefixed with "ic", bricks for crafting MUST be preficed with "bc".
At first have a look into the georges.cfg. If incorrect, change your RootSearchDirectory to your leveldesign folder, which contains upon other things the "DFN" folder.
Step-by-Step
Open georges exe
File new form
Select DFN/game_elem/sitem.dfn as form definition
Save the form, browse to game_element/sitem/armor/common, create a folder test_armor and save as filename ic_test_trooper_vest.sitem
Under content, set as parent form game_element/sitem/armor/_parent/_gca_l.sitem, and hit Assign parents
Save regularly
Under basics set the name to "test trooper armor vest"
Set item type to Light vest
Under EquipmentSlots set Array size to 1
And set the first equipment slot to Chest
Under 3d set shape to "CA_HOM_trooper_torse.shape" and shape_female to "CA_HOF_commander_gilet.shape" (check inside the .bnp to see what .shape you have available)
Set icon to "AR_gilet.tga"
Save
Create another form called bc_test_trooper_vest_01.sbrick under game_element/sbrick/ that uses sbrick.dfn
Under Basics set FamilyId to BCCAEA
Set action nature to CRAFT
Set indexinfamily to 1
Under Client set icon to AR_gilet.tga and iconover to FP_over.tga
Under faber create set crafted item to ic_test_trooper_vest.sitem
Set mp1 to armor shell
set mp2 to armor clip
Save
in the ic_test_trooper_vest.sitem basics set craftplan to bc_test_trooper_vest_01.sbrick
Rebuilding the sheet data
Rebuild sheet id with following command
R:\code\nel\tools\misc\make_sheet_id\ make_sheet_id_r.exe -oL:/leveldesign/game_elem/sheet_id.bin L:/leveldesign/game_elem L:/leveldesign/game_element L:/leveldesign/world
Rebuild packed sheets for the client, browse to R:\code\ryzom\tools\sheets_packer\ and run sheets_packer_r.exe
Move the packed_sheets in R:\code\ryzom\client\data to the user folder of your Ryzom Core client
Copy the sheet_id.bin also to your user folder
Delete all the packed sheets for the server, and launch the shard, and try to connect with client
Before launching AIS, you can add the sitem to a merchant npc, or you can use ingame admin command to get item in your inventory
Note: Currently after rebuilding client packed sheets, it seems player character heads are missing
Create item ingame into inventory
Connect with your client
On EGS use command setPriv 1 :DEV:
Select yourself ingame
Do /a createItemInBag ic_test_trooper_vest.sitem 1 25