MAXT8_inc-HalfSwordControls icon

HalfSwordControls

Half Sword style mouse hand control for BONELAB flatscreen play. Hold a mouse button to move that hand while the camera stays still. Requires FlatPlayer.

Last updated 2 days ago
Total downloads 90
Total rating 1 
Categories Mods Code Mods Misc AI Generated
Dependency string MAXT8_inc-HalfSwordControls-0.5.1
Dependants 0 other packages depend on this package

This mod requires the following mods to function

LlamasHere-FlatPlayer-2.2.1 icon
LlamasHere-FlatPlayer

Play BONELAB without a VR headset (or with a 3Dof one whatev)

Preferred version: 2.2.1
bonelib-BoneLib-3.2.2 icon
bonelib-BoneLib

A BONELAB mod for making life easier for other mod creators.

Preferred version: 3.2.2

README

HalfSwordControls changes how the mouse works in BONELAB flatscreen play. Hold a mouse button and the mouse moves that hand while the camera stays where it is, so you can swing a weapon without turning your view. It runs on top of FlatPlayer and needs it installed.

Requirements

  • BONELAB on Steam (tested on 1.744.58126)
  • MelonLoader 0.7.3
  • BoneLib 3.2.2
  • FlatPlayer 2.2.1

The mod reads and writes FlatPlayer's internal fields. A FlatPlayer update can break it until this mod is updated.

Installation

Source code is available on GitHub: Half-sword-controls

Install the package through Thunderstore Mod Manager and the dependencies come with it. For a manual install, copy HalfSwordControls.dll into the Mods folder of your MelonLoader profile and start the game.

Controls

  • Hold the right mouse button to control the right hand. Hold the left mouse button to control the left hand.
  • Move the mouse to move the held hand left, right, up and down.
  • Hold Shift together with the mouse button and move the mouse to rotate the wrist.
  • Scroll the wheel to thrust the hand forward.
  • Hold Alt to turn hand control off and look around normally.
  • To keep a weapon from dropping when you release the mouse button, hold Q and E (Grip) and keep holding it.

The camera stays still while a hand button is held. After you release the button, the hand keeps its pose and the mouse goes back to moving the camera. WASD and the other FlatPlayer controls work as before.

Settings

The BoneMenu has a HalfSwordControls page with these items:

  • Pos Sensitivity, from 0.001 to 0.02 meters per mouse count
  • Rot Sensitivity, from 0.5 to 5.0 degrees per mouse count
  • Invert Y
  • Reset Hands, which calls FlatPlayer's own hand reset

Changes apply right away and are saved to UserData/MelonPreferences.cfg about a second after the last change. The same file has a [HalfSwordControls] section with the remaining options:

Setting Default What it does
DecoupledInput_Enabled true Turns the whole control scheme on or off
CameraKey LeftAlt Hold to switch hand control off
LeftHandButton Mouse0 Button that controls the left hand
RightHandButton Mouse1 Button that controls the right hand
RotateModifierKey LeftShift Hold to rotate the wrist instead of moving the hand
PosSensitivity 0.003 Hand movement in meters per mouse count
RotSensitivity 2.0 Wrist rotation in degrees per mouse count
InvertY false Inverts vertical mouse movement for the hands
RequireCursorLock true Hand control works only while the cursor is locked, so menus behave normally
AimXLimit 0.5 Maximum sideways offset from the pose at the moment you press, in meters
AimYLimit 0.5 Maximum vertical offset from that pose, in meters
AimYawLimit 120 Maximum wrist yaw from that pose, in degrees
AimPitchLimit 85 Maximum wrist pitch from that pose, in degrees
ReachPerScroll 0.05 Forward movement per wheel notch, in meters

Known limits

  • Fusion multiplayer is untested.
  • The mod works with FlatPlayer only. It does nothing in VR.
  • Not in this version: raycast grab, auto-mantle, one-key reload, and velocity-based melee damage.

Troubleshooting

Open MelonLoader/Latest.log. A working install prints [FlatPlayerBridge] FlatBooter members resolved. and BoneMenu page 'HalfSwordControls' created. A warning that names a missing FlatBooter member means your FlatPlayer version differs from 2.2.1.

If the camera still turns while a hand button is held, attach Latest.log to your bug report.

Credits

FlatPlayer by LlamasHere. BoneLib by the BONELAB modding community.