So what we're going to do is to create another creature and put it (with help by the world editor) onto newbyland.
Note 1: For the sake of simplicity in this guide i oriented myself at the existing dag creature or "yubo" as called ingame. Of Course, the goal of Ryzom Core is not to rebuild the original Ryzom. But in my opinion it will take some time till we have e.g. some truly new creatures as this also relies heavily on source code additions. Until then it should be ok if we create some more samples to get to known with the whole process.
Note 2: Personally i think the current georges editor has much potential, but most times im kind of overwhelmed by the masses of editable informations.
So i switched to just open the actual xml files and edit them. I decided to do it for this guide as well which also saves me from making a lot of screenshots :) But of course you are welcome to do it all in the offical Nel tool!
Relevant yubo creature files existent in the ryzom core leveldata:
- $leveldesign$/Game_elem/Creature/fauna/bestiary/forest/chdfa1.creature (XML)
- $leveldesign$/Game_elem/Creature/fauna/Parent_creature_prototype/_dag.creature (XML)
- $leveldesign$/Game_elem/Creature/fauna/Ecosystem/forest/_dag_for.creature (XML)
- $leveldesign$/Game_elem/items/armor/creature_armor/medium_slashing_chest.item (XML)
Note1: The files with the underscore ("_") in front are just parent files which are simplifying creation of more than one arma like creature by defining some general "arma" values.
Open the arma.creature file
Note2: For the correct file names unpack the fauna_shapes.bnp and fauna_skeletons.bnp (see "Adding Game Entities" if you dont know how to do this). There you should find a lot of creatures to start with.
- change any stat value you want like "life"
- replace in
1<ATOM Name="Race" Value="dag"/>
1<ATOM Name="Race" Value="arma"/>
- replace the
Equipmentstruct with the following
1<STRUCT Name="Equipment"> 2 <STRUCT Name="Body"> 3 <ATOM Name="Item" Value="arma_chest.item"/> 4 </STRUCT> 5 <STRUCT Name="Legs"> 6 <ATOM Name="Item" Value="medium_slashing_legs.item"/> 7 </STRUCT> 8 <STRUCT Name="Arms"> 9 <ATOM Name="Item" Value="medium_slashing_arms.item"/> 10 </STRUCT> 11 <STRUCT Name="Hands"> 12 <ATOM Name="Item" Value="medium_slashing_hands.item"/> 13 </STRUCT> 14 <STRUCT Name="Feet"> 15 <ATOM Name="Item" Value="medium_slashing_feet.item"/> 16 </STRUCT> 17 <STRUCT Name="Head"> 18 <ATOM Name="Item" Value="medium_slashing_head.item"/> 19 </STRUCT> 20</STRUCT>
- replace the Skel, AnimSetBaseName and LodCharacterName atoms in the
3d datastruct with the following
1<ATOM Name="Skel" Value="TR_MO_Arma.skel"/> 2<ATOM Name="AnimSetBaseName" Value="arma"/> 3<ATOM Name="LodCharacterName" Value="TR_MO_arma_LOD"/>
3dstruct with the following
1<STRUCT Name="3d"> 2 <ATOM Name="shape" Value="TR_MO_Arma.shape"/> 3 <ATOM Name="shape_female" Value="TR_MO_Arma.shape"/> 4</STRUCT>
- Build the sheets_id.bin with the make_sheet_id tool and copy it to the user dir in your game client dir
- Build the .packed_sheets with the sheets_packer and copy it to the same location
- Delete all .packed_sheets from the server/data_shard dir if existing
- Make sure the four files we created are existing in the correct dir in your leveldesign dir and that they contain the content i explained before
- Finally we need to add a name for our new arma
- Edit creature_en.txt in your $server_dir$/data_shard/language folder
- Edit creature_en.txt in your $client_dir$/user
- Add this line at the bottom in both files (be carefull with the tabs)
_A07A5C396E75AF9C arma My Arma a the Armas the
- Start your server
- start your client, let him connect to your server and login
- congratz! :D