This page is intended to explain how the engine handles the position for the items held in the character's hand. Later we will post the corrections that need to be done.
When a new weapon is added, I need to create a new line inside the master parameter file, that is "_FOHuman.fo3d". This line goes under the section labeled as "#Right Handle", and it starts with the Value number.
After the number , there is a command:
Attach. That indicates the model File that we want to attach to the character model.
After the name of the model file, we see the coordinates line. That is what we need to care about. First thing that appears is the word "Link", that indicates which bone we want to have the weapon attached to, so right after it you will see the name of the bone, most of the time it is "R_Handle_1" for the in hand weapons. Next part contains a few commands that can be in any order so I will list them below:
"Scale #" This command, "Scale" followed by a number sets the size of the weapon/item.
"MoveX #" "MoveY #" and "MoveZ #" Those set the position for each axis. There is no need for the three of them to appear, just use them in case they need correction.
"RotX #" "RotY #" and "RotZ #" Those set the rotation for each axis, however I found that sometimes one of them does not work.
There might be some other commands that I don't know about, but those will do fine for corrections.
Example:
# Right Handle
Layer 1
Value 1 Attach WP_PlasmaRifle.x Link R_Handle_1 Scale 1 RotX -90 RotY -15 MoveX 10
You can test those in the game by using the layer 151 and the value of the weapon. But this is an
important thing:
Make sure you have a weapon equipped that uses the correct animation set, otherwise you will be correcting a weapon's position in unarmed state, which can never happen in the actual game. For items it is fine to use unarmed position, in that case just make sure you are not holding a weapon in your inventory slot
Now, there is also the holstered weapon layer, that is labeled "# Left Handle".
Same here, same numbers. The bones you will use are "Spine_1" and "R_Thigh", which are the back, and the right leg respectively. This time you will have to test with layer 152 in the game. You can deactivate the 151 by setting it to 0.
-----------------------------------------------------------------------------
This work requires some time and patience, so please announce here if you want to correct a line and post it when you are done, that way you don't waste lots of time with something that someone else has already corrected.
Also if you can, use color when you post the corrected line. That way I won't miss it when I have to merge all of them into the master file.
That's all, I hope I explained myself right, and this does not turn into a big mess.