Page 1 of 1

Holstered Weapons

Posted: Mon Jul 21, 2008 1:58 pm
by Soh Raun
RPMod 0.4.0 brings the Holstered Weapons feature from OJP (named VisualWeapons there), that allows you to see weapons and sabers on players even when they are not using them.

The position and angle of weapon/saber models may need to be manually adjusted to work better with your model and to avoid clipping. To customize them, you need to provide a holster_skinname.cfg file for every skin you have for your model. For the default skin, use holster.cfg.

Default positions and angles are provided by Kyle's holster.cfg, located in RPMod-Client-Assets.pk3/models/players/kyle, that is a good starting point to create a custom one.

This file also contains instructions from OJP and adjusted for RPMod. For your convenience, here is a copy of these instructions.

Important: make sure to set the rpc_debugHolsteredWeapons_posOffset and the rpc_debugHolsteredWeapons_angOffset Cvars to the position/angle you want to test. A good start is to simply copy the values from the holster.cfg file (without commas - for example, "3.5 3.5 0"). Otherwise, the default value is "0 0 0", meaning the holstered weapon would be inside your "body" (player model).

Code: Select all

//=================================================
//This file contains configuration data for attaching holstered weapons on this playermodel.
//When used in conjuncture with the holster debug system, you can configure the holster weapons
//to be anywhere on the playermodel's body.
//
//
//
//	Possible HolsterTypes (Use numerical values when using rpc_debugHolsteredWeapons):
//	1 = HLR_SINGLESABER_1,			//first single saber
//	2 = HLR_SINGLESABER_2,			//second single saber
//	3 = HLR_SINGLESABER_1_IDLEINBACK	//first single saber, idle in back
//	4 = HLR_SINGLESABER_2_IDLEINBACK	//second single saber, idle in back
//	5 = HLR_STAFFSABER,			//staff saber
//	6 = HLR_PISTOL_L,			//left hip blaster pistol
//	7 = HLR_PISTOL_R,			//right hip blaster pistol
//	8 = HLR_BLASTER_L,			//left hip blaster rifle
//	9 = HLR_BLASTER_R,			//right hip blaster rifle
//	10 = HLR_BRYARPISTOL_L,			//left hip bryer pistol
//	11 = HLR_BRYARPISTOL_R,			//right hip bryer pistol
//	12 = HLR_BOWCASTER,			//bowcaster
//	13 = HLR_ROCKET_LAUNCHER,		//rocket launcher
//	14 = HLR_DEMP2,				//demp2
//	15 = HLR_CONCUSSION,			//concussion
//	16 = HLR_REPEATER,			//repeater
//	17 = HLR_FLECHETTE,			//flechette
//	18 = HLR_DISRUPTOR,			//disruptor
//
//	
//	Possible boneIndexes (Use numerical values when using rpc_debugHolsteredWeapons_boneIndex):
//	Note:  Use "disabled" (without the quotes) or HOLSTER_NONE if you want to disable 
//	       the rendering of that particular holster weapon.
//  	0 = HOLSTER_NONE, 	//no bone, don't display holster weapon
//  	1 = HOLSTER_UPPERBACK,	
//  	2 = HOLSTER_LOWERBACK,
//  	3 = HOLSTER_LEFTHIP,
//	4 = HOLSTER_RIGHTHIP,
//
//	Holster Weapon Groups and Priorities:
//
//	Single handed lightsabers always appear (defaultly placed on the thighs).
//
//	Blaster weapons (pistols and blasters) can appear in both the right and left holster
//	positions (defaulting to the left and right hips), but the same weapon will never appear in 
//	both positions at the same time.
//		Priority:
//			Blaster
//			Pistol
//			Bryar Pistol
//
//
//	The larger weapons are stuck in the same location (normally on the back).
//		Priority:
//			Staff Saber
//			Rocket Launcher
//			Concussion Rifle
//			Repeater
//			Flechette
//			Disruptor
//			Bowcaster
//			Demp 2
//
//
//HOLSTER DATA FORMAT TEMPLATE
//{
//	//name of holster weapon 
//	holsterType HLR_PISTOL_R
//
//	//Indicates which part of the player body that this weapon is offset from.  The
//	//holster system uses this body part for the initial positional/angular data of this
//	//holster weapon.
//	//This can also be used to completely disable the rendering of this holster position.
//	boneIndex HOLSTER_RIGHTHIP 
//
//	//Where in relation to the body part should the weapon be.  Determining this position
//	//is VERY tricky because the directions are dictated in terms of the current orientation
//	//of the body part.
//	posOffset "3.5, 3.5, 0"
//
//	//How the weapon should be rotated in relation to the body part's orientation.
//	angOffset "90, 0, 0"
//}
//
//=================================================