Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

danikaze/controller-overlay

Repository files navigation

controller-overlay

Generate a browser source (to use via OBS or any other tool) displaying an overlay of your HOTAS controller in real time.

config=elite

Preview screenshot

config=megadrive6

Preview screenshot

config=megadrive3

Preview screenshot

config=sufami

Preview screenshot

config=snes

Preview screenshot

config=nes

Preview screenshot

config=famicon

Preview screenshot

config=mastersystem

Preview screenshot

config=mastersystemred

Preview screenshot

config=arcade8snes

Preview screenshot

config=arcade6neogeo

Preview screenshot

config=xbox360

Preview screenshot

config=gba

Preview screenshot

How to use it

Download the latest version and open index.html. This should display a webpage like the one shown in the screenshot.

In OBS add a New source > Browser and enter the provided OBS URL in the bottom of the page (to show the page with a transparente background and without the info window at the bottom). This should be something like file:///your-folder/controller-overlay/index.html?config=megadrive&display=1

How to customize it

First version is just a PoC (Proof of Concept) where the shown controls are what I find interesting to show for Elite Dangerous, and the bindings are the ones I use with my X-56, so every value is harcoded.

Later on, I added some other configs as shown in the top of this document

The html will show the Elite one by default, but adding ?config=megadrive should show any other available one (and now it can be chosen with a select input if display=1 is not added).

Support

This project plans to support combinations of inputs and displays:

Digital button 1-axis 2-axis
CSS digital button
CSS analog button しろさんかく しろさんかく
CSS X-axis
CSS Y-axis
CSS XY-axis
Image digital button
Image analog button しろさんかく
Image X-axis
Image Y-axis
Image XY-axis

✔ = done | しろさんかく = planned | ✖ = not gonna happen

Rebuilding

First, clone the repository and install the dependencies:

npm install

Then, just build it:

npm build

Building will generate the required files in the app folder, the index.html file is the one to use.

Changelog

0.7.0

0.6.0

0.5.0

  • Added support for logic configuration (AND, OR, NOT) - i.e: to show an image when 2 buttons are pressed at the same time (diagonals), etc.
  • Added a configuration for the Buffalo controller with the Arcade 4+4 stick design.

0.4.0

  • Added styles. Can import extra css files by the style query param or field in the configuration.

0.3.0

0.2.0

  • Allow to fully customize the layout from a config file. Config file is still hardcoded tho, but it's a big step.
  • Added a configuration for the Mega Drive mini 6B controller.
  • Added support for:
    • Digital buttons with images
    • 1-axis shown as a digital button with CSS
    • 1-axis shown as a digital button with images

0.1.0

First version. PoC to test the creation of a browser source in OBS.

It supports:

  • Digital buttons with CSS
  • 1-axis with CSS
  • 2-axis with CSS
  • Digital buttons shown as 1-axis with CSS
  • Digital buttons shown as 2-axis with CSS

AltStyle によって変換されたページ (->オリジナル) /