Jump to content

1 Screenshot

About This File

This is a quality of life mod for MinAI. If you don't have MinAI (and CHIM), you don't need this mod.

 

Remember that these are simply messages to your AI-enabled populace mapped to hotkeys, how they respond is entirely up to your LLM and the rest of your context. These are not direct controls. Customizing the messages is highly recommended.

 

@NPCKeys 4 MinAI allows you to assign custom keybinds and chat commands to specific AI-enabled NPCs, empowering advanced AI interactions and immersive roleplay scenarios. You can register up to 10 NPCs, configure up to three individual keybinds per NPC, and customize the messages they receive on hotkey. MinAI NoActions, NoSexActions, and NoNSFWActions Factions are also exposed per NPC and can be toggled. @lastSpeaker and @everyone group messages are also available.

 

This beta release is intended for wider testing and feedback. Please report any bugs or suggestions!

 

*Tip for VR users: VRIK allows you to use VRIK Gestures to "emulate hotkey". I have right-touchpad + gesture right assigned to emulate Hotkey 3, then use that to bind Hotkey 3 to "Start Looting" message. Initial tests are very promising!

 

There are also a number of other Hotkey enhancement mods that will probably work well with this mod. Let me know if you have a favorite and if it needs any special handling.

 

Requirements: 

  • CHIM
  • MinAI
  • SKSE64  
  • PapyrusUtil  
  • Papyrus Extender  
  • Papyrus Tweaks NG

Features

  • Register up to 10 NPCs for custom keybinds and chat commands.
  • Customize messages in JSON files
  • MCM Integration:
    • Manage NPC Registry and individual NPC settings.
    • Toggle faction membership: MinAI No Actions, No Sex Actions, No NSFW Actions Factions.
    • Send group messages on hotkey - @everyone.
    • Send messages to last speaker on hotkey - @lastSpeaker.
    • Assign keybinds for a simple RequestResponse and/or up to two additional custom messages for each NPC.
    • Choose from a list of pre-defined or customize (in JSON) messages for each custom keybind.
    • Esc to unbind hotkeys.
    • Clear all hotkeys and registry reset options.
    • Toggle on-screen notifications and debug logging.
    • Set default preferences for 'Send as'.
    • Enable RegisterEvent for @everyone page (Custom message as event to everyone, no response request)
    • Backup/Restore NPC Registry
    • Import/Export Configuration Settings
    • Uninstall button

Usage

  • Target AI-enabled NPC in crosshair
  • Open the **MCM** (Mod Configuration Menu) in-game.
  • Use the "Add NPC to registry" button.
  • Toggle factions, assign keybinds, select messages and style (Send as Player, Narrator, or Dungeon Master) for each NPC.
  • Use your assigned keys in-game to send chat commands to registered NPCs.
  • Check Context_sent_to_llm.log to see exactly what your hotkey is doing.
  • This mod just injects custom messages into context on hotkey and requests response. The LLM will respond however it wants. Experiment!
  • Enable Debug Logging in MCM and check Papyrus.0.log for troubleshooting.
  • NPC and keybind data is stored in `NPCKeys4MinAI.json` for easy backup and editing.

Customizing Messages

  • Edit `CustomMessages.json`, `GroupMessages.json`, and `CustomEvents.json` to add or change available messages. Edit anytime, re-open MCM to refresh.
  • Each message now has a `label` (for MCM display), a `message1stp` (Player/Narrator style), and a `message3rdp` (Dungeon Master style).

Example:

json
{
  "label": "Start Looting",
  "message1stp": "Start looting the area now.",
  "message3rdp": "starts to loot the area."
}


`label`: The action name shown in the MCM.

`message1stp`: Used for Player and Narrator chat types (direct request, e.g., "Start looting the area now. (Talking to {npc})").

`message3rdp`: Used for Dungeon Master chat type (third-person, e.g., "{npc} starts to loot the area.").

 

How chat types use these fields:

  • Player: Sends `message1stp` to the NPC as chatnf.
  • Narrator: Sends `message1stp` as a narration (e.g., "The Narrator: Start looting the area now. (Talking to Lydia)").
  • Dungeon Master: Sends `message3rdp` using the Dungeon Master direct message (e.g., "Lydia starts to loot the area.").

Uninstallation

  • Reset the NPC Registry (this removes all NPCs from registry and unregisters all keybinds).
  • Use the Uninstall button in MCM and then save.
  • Remove the mod from your load order.
  • Remove mod files.

Credits

  • MinAI Team
  • CHIM Team
  • SKSE Team
  • Expired6978 (PapyrusUtil)
  • Ryan (Papyrus Extender, Papyrus Tweaks NG)
  • SkyUI Team (MCM framework)
  • All testers and contributors

License

This mod is provided as-is for beta testing. Do not redistribute without permission.


What's New in Version 0.92

Released

@NPCKeys 4 MinAI v0.92

- Added @gameDirector page for addressing CHIM Director Mode (use CustomDirector.json to customize messages)

- More duplicate hotkey prevention

 

@NPCKeys 4 MinAI v0.91

- Fixed Esc to unbind issue

- Added Available Action Names to messages (use StartLooting)

@NPCKeys 4 MinAI v0.90 *REQUIRES A CLEAN SAVE OR NEW GAME* (Sorry, future updates should be upgrade in place)

- Changed mod name for quicker access (sort to top of MCM)

- Mod initialization and startup reworked, MCM and Quest script refactored

- Added @lastSpeaker page for addressing the last NPC to speak

- Added RegisterEvent messages (Injects context to event log without requesting response, enable in MCM Settings to show on @everyone page)

- Added Import/Export Settings, Backup/Restore NPC Registry, Clear All Keybinds, Uninstall tool

- Added on-screen notifications (disable in MCM)

- MCM UI improvements

 

NPCKeys4MinAI v0.8

- Added '@everyone' page for addressing the group

- Added new GroupMessages.json to customize those messages separately


Other Files from stnfnk


×
×
  • Create New...