Holster layouts

"Hang the rifle where the hand falls. Nobody reaches behind their own ear for a pistol." — Quartermaster Dell Vass

The holster editor positions each sheathed weapon on a player model and writes the result to the model's holster.cfg.

The editor works on the model you are wearing when you start it. It will not open while a camera, photo free cam, gimbal or placement mode is running.


What it does

Where holstered weapons sit is defined per model, in models/players/<model>/holster.cfg. The editor is a live authoring tool for that file. You pick a slot, choose a bone, and nudge the weapon into place while watching it on your own model.

While the editor is running, your model is drawn from the editor's working copy, even with sf_holsteredweapons set to 0. The selected slot shows solid. With the panel's Holster.cfg shadow toggle on, which is the default, every other configured slot shows as a translucent ghost.


Opening the editor

Run /holsteredit on its own, or open the ESC panel under StoryForce > Tools > Holster Editor.

/sf_holsteredit is an accepted alias for /holsteredit. begin and world are accepted aliases for starting it, and off and stop for exit.

/holsteredit help lists every subcommand.

4 subcommands act on a running session: save, reload, seed and slot. Run one with the editor closed and it prints a refusal followed by the help text. /holsteredit itself, exit and help work at any time.

The editor's panel sets the Weapon and Bone for the selected slot. Select EDIT IN WORLD to tune positions with the mouse wheel. From the world view, right-click or press ESC to return to the panel with your values kept. Close the editor with the panel's DONE or with /holsteredit exit.


Laying out the slots

Each weapon has a fixed slot number, and each slot gets a bone, a position and a rotation. The bones are the upper back, the lower back, the left hip and the right hip, plus disabled, which draws nothing. A slot needs a bone set on the panel before it can be placed.

Slot Weapon Slot Weapon
1 Single saber 1 9 Bryar pistol, right
2 Single saber 2 10 Bowcaster
3 Staff saber 11 Rocket launcher
4 Pistol, left 12 DEMP2
5 Pistol, right 13 Concussion rifle
6 Blaster, left 14 Repeater
7 Blaster, right 15 Flechette
8 Bryar pistol, left 16 Disruptor

/holsteredit slot <1-16> selects a slot directly. It prints nothing. The panel and the readout at the bottom of the screen both follow the selection.

In the world view, the mouse wheel nudges the selected weapon in 0.5 unit steps, up to 64 units along each axis. The plain wheel moves it forwards and backwards. Hold SHIFT to move it outward from the body, and CTRL to move it up the bone. Press R to switch to rotation, where the wheel turns pitch, SHIFT yaw and CTRL roll, in 5 degree steps.

Your character stays frozen while you edit, and the mouse does not turn you. The LEFT and RIGHT arrow keys orbit the camera around your model, and UP and DOWN zoom. The camera centres on the selected slot's bone.

Starting from scratch on a new model is easier with /holsteredit seed. It fills every slot from the shipped reference layout, which is copied from the kyle model's holster.cfg and fits any standard humanoid, so you are adjusting rather than placing.


Saving a layout

/holsteredit save, or the panel's SAVE CFG, writes the layout to models/players/<model>/holster.cfg, where <model> is the model you were wearing when you started the editor. The file lands loose in your StoryForce folder.

The file takes effect the moment it is written, for everyone using that model on your machine. It is plain text, and its header comments document every field.

A model can also carry a separate layout per skin, named holster_<skin>.cfg. If one exists for the skin you are wearing, it wins over the general file. The editor only ever writes the general file, and warns you when a skin file is shadowing it.

Throw away your edits and go back to what is on disk with /holsteredit reload.

Closing the editor writes nothing to disk, so save before you close. The editor starts from what is on disk when you reopen it.

To give the layout to other people, pack the saved holster.cfg into the model's pk3, in the same models/players/<model>/ path.


Things to note

  • The editor edits the model you are wearing. Changing model or character mid-session closes the editor and discards unsaved edits.
  • A skin-specific file silently wins. It beats the general one, so edits to holster.cfg appear to do nothing when a holster_<skin>.cfg exists for your current skin.
  • Pure servers ignore loose files. A layout that works locally will not reach other players until it is packed into the model's pk3.
  • Layouts are per model, not per character. Every character wearing the model gets the same layout.
  • Saber slots preview with a stand-in hilt. A default hilt is drawn for a saber slot when your character has no matching saber, so you can still place it.
  • Crouch input is ignored while the editor is running. A crouch toggle cannot leave you stuck down when you leave.

Next