Is there a way to see all FOSE hotkeys assigned?

Post » Sun Aug 08, 2010 11:40 am

While I like the convenience of hotkeys it gets confusing remembering what mod function is what hotkey, between Triage, Sprint, Stealthboy Reworked, Powered Power Armor, etc...

Is there a way to print all hotkey assignments?
User avatar
Stephanie Valentine
 
Posts: 3281
Joined: Wed Jun 28, 2006 2:09 pm

Post » Sun Aug 08, 2010 10:19 pm

Hotkeys are assigned by having a script frequently check if a key is pressed, which is impossible to test for. You could use http://fose.silverlock.org/fose_command_doc.html#IsControl to check if a key has been set as a control via http://fose.silverlock.org/fose_command_doc.html#SetIsControl, but not all mods that use hotkeys support this method and there's no way of knowing which mod has set a key as a hotkey, or for what purpose.

Your best bet is checking if a mod has a built-in mechanism for reporting hotkeys, or/and keeping track of them somehow yourself.

Cipscis
User avatar
Angel Torres
 
Posts: 3553
Joined: Thu Oct 25, 2007 7:08 am

Post » Sun Aug 08, 2010 11:28 am

I was asking about the setiscontrol function a little while ago on the GECK forums. I couldn't figure out how to use it, and ending up messaging the FOSE team. Apparently the FOSE documentation for the command is incorrect, so odds are, few people actually use the function at all, meaning IsControl is of limited use for custom hotkeys.

The documentation should read something like:

setiscontrol "scan code" "bool"

where the bool is either 1 if you want to flag the key as a control key, or 0 if you want to clear it as a control key.
User avatar
adam holden
 
Posts: 3339
Joined: Tue Jun 19, 2007 9:34 pm

Post » Sun Aug 08, 2010 9:05 pm

Thanks for that, I've amended the parameter names in the definition of http://fose.silverlock.org/fose_command_doc.html#SetIsControl in my http://www.cipscis.com/fallout/utilities/validator.aspx.

As far as I'm aware, because FOSE currently has no way of saving extra data with a regular save, the effects of http://fose.silverlock.org/fose_command_doc.html#SetIsControl will only last for the current game session, so if anyone does want to use it, they'll need to reapply it every time the game is loaded.

Cipscis
User avatar
Mariana
 
Posts: 3426
Joined: Mon Jun 12, 2006 9:39 pm

Post » Sun Aug 08, 2010 10:26 pm

I've just gotten IsControl and SetIsControl working for FOOK's nine current hotkeys using the below...

scn FookHotkeyBindingSCPTInt bHotkeyBoundInt iHotkeyInt bIsControlBegin GameMode	If bHotkeyBound		If (FookMenuHotkeyGLOB == 0)			Set FookMenuHotkeyGLOB to iHotkey		ElseIf (FookNVGHotkeyGLOB == 0)			Set FookNVGHotkeyGLOB to iHotkey		ElseIf (FookCameraShiftRightGLOB == 0)			Set FookCameraShiftRightGLOB to iHotkey		ElseIf (FookCameraShiftLeftGLOB == 0)			Set FookCameraShiftLeftGLOB to iHotkey		ElseIf (FookCameraZoomInGLOB == 0)			Set FookCameraZoomInGLOB to iHotkey		ElseIf (FookCameraZoomOutGLOB == 0)			Set FookCameraZoomOutGLOB to iHotkey		ElseIf (FookKHThrowGrenadeHotkeyGLOB == 0)			Set FookKHThrowGrenadeHotkeyGLOB to iHotkey		ElseIf (FookKHToggleGrenadeHotkeyGLOB == 0)			Set FookKHToggleGrenadeHotkeyGLOB to iHotkey 		ElseIf (FookLockOnHotkeyGLOB == 0)			Set FookLockOnHotkeyGLOB to iHotkey 		EndIf		RemoveMe	Else		Set iHotkey to GetKeyPress 0		Set bIsControl to IsControl iHotkey		If (iHotkey == -1)			ShowMessage HotkeyBindingStartMESG		ElseIf bIsControl			ShowMessage HotkeyBindingConflictMESG iHotkey		Else			SetIsControl iHotkey 1			Set bHotkeyBound to 1			ShowMessage HotkeyBindingEndMESG iHotkey		EndIf	EndIfEnd
...after initializing the rebinding for all of them using button code like so...
	If (iButton == X) ; Reset Menu Hotkey		SetIsControl FookMenuHotkeyGLOB 0		Set FookMenuHotkeyGLOB to 0		Player.AddItem FookHotkeyBindingARMO 1 1


Thanks for the tips you all! :)
User avatar
MarilĂș
 
Posts: 3449
Joined: Sat Oct 07, 2006 7:17 am


Return to Fallout 3