Skip to content

ROBdk97/SCStreamDeck

 
 

Repository files navigation

Star Citizen Stream Deck Plugin

User Guide: https://robdk97.github.io/SCStreamDeck/
Download latest Release: Here
Report bugs / feature requests: https://github.com/ROBdk97/SCStreamDeck/issues


Warning

This site is not endorsed by or affiliated with the Cloud Imperium or Roberts Space Industries group of companies. All game content and materials are copyright Cloud Imperium Rights LLC and Cloud Imperium Rights Ltd.. Star Citizen®, Squadron 42®, Roberts Space Industries®, and Cloud Imperium® are registered trademarks of Cloud Imperium Rights LLC. All rights reserved.


Requirements

Windows 10+ Stream Deck v6.4+

Installation Options

Method Package Runtime requirement
Simple com.robdk97.scstreamdeck.runtime-included.streamDeckPlugin None
Advanced com.robdk97.scstreamdeck.runtime-required.streamDeckPlugin Install .NET 10 Desktop Runtime x64

Project Info

Status

GitHub release License Contributions - welcome

Code scanning CI

Programming Languages

C# HTML5 CSS3 JavaScript

Support / Funding

PayPal

Current Features

  • Adaptive Key: A key that executes keybindings based on the activation mode for a given binding.
    • Example: Two in-game bindings (Tap vs Hold) on Num- executes only the Tap function when this is the assigned function.
  • Adaptive Dial (Stream Deck+): A dial that maps separate Star Citizen functions to rotate left, rotate right, and dial push. Rotation fires the assigned function once per tick; push respects the action's activation mode.
  • Toggle Key: A key that toggles between two states (e.g., landing gear up/down). Can be reset to match the current in-game state on de-sync.
  • Control Panel Key: A dedicated key for managing global plugin settings such as themes, preferred channel selection, per-channel installation overrides, and plugin language.
  • Auto-Detection of Star Citizen Installation Path: Automatically detects the installation path of Star Citizen.
  • Multiple Channels Support: Supports LIVE, HOTFIX, PTU, EPTU, and TECH-PREVIEW installations.
  • Plugin UI Localization: Built-in plugin and Property Inspector localization for English, German, French, and Spanish, with auto-detect and a Control Panel override.
  • Mouse Wheel Support: Supports mouse wheel actions for bindings that use mouse wheel input (Mouse Wheel Up/Down).
  • Custom Language Support: Supports custom language files for localization when using custom global.ini from the community, e.g. StarCitizen-Deutsch-INI by rjcncpt.
  • Theme Support: Themes for customizing the appearance of the plugin. Includes a template for creating your own themes!
  • Click Sound: Provides audio feedback on key presses with configurable sound files (.wav and .mp3).

Installation

See the full installation guide: https://robdk97.github.io/SCStreamDeck/install/

Known Limitations

Mouse buttons (mouse1 - mouse5) don't work while moving the mouse in Star Citizen

Star Citizen can ignore synthetic mouse button events sent by Windows user-mode injection (the plugin uses SendInput) while the game is actively reading mouse movement for aiming/flying (relative mouse input).
This can make Stream Deck-triggered mouse clicks (mouse1–mouse5, including MMB/mouse3) unreliable unless the mouse is perfectly still.

Workarounds:

  • Prefer binding Stream Deck actions to keyboard keys in Star Citizen.

Why not “fix” it in the plugin?

  • The "reliable" approach is HID-level injection (virtual mouse / driver). This plugin intentionally avoids driver-based input injection due to potential anti-cheat / ToS risk.

Credits

Star Citizen Stream Deck Plugin uses the following open-source projects and libraries:

Acknowledgements

This project was inspired by the following repositories (code rewritten from scratch and optimized):

About

Resources

License

Contributing

Stars

Watchers

Forks

Contributors

Languages

  • C# 87.4%
  • JavaScript 7.8%
  • CSS 2.7%
  • HTML 1.7%
  • Batchfile 0.4%