Giter Site home page Giter Site logo

razer-gamesense's Introduction

Razer Gamesense

Intercept calls sent from Razer enabled games and sends them over to Steelseries Engine for output. Essentially, this will show Razer keyboard only effects on Steelseries keyboards.

Requirements

  • Steelseries Engine installed
  • Per key RGB keyboard. Currently:
    • Apex M800
    • M750
  • Uses some C#7 features, so you need VS2017 if building yourself

Currently, only the Apex M800 keyboard is support as i have no access to a M750

Installation

  • Build project
  • Copy RzChromaSDK64.dll to Windows/System32.
  • Copy razergamesense.lsp file to the hax0rbindings folder (%ProgramData%\SteelSeries\SteelSeries Engine 3\hax0rBindings)

Concerns

Why System32?

Razer enabled games will use the dll in the System32 folder first, this allows us to hijack the calls and divert them.

Doesn't this breach the ToS for Overwatch and such.

While i can't offer any guarantees, it shouldn't. It never directly interacts with either the game, or the memory space occupied by the game. In general, most games will fire the colors in a fire-and-forget manner, so there is never any direct interaction between this and the game.

Remove/Disable

If you wish to uninstall/disable, just remove or rename the RzChromaSDK64.dll file.

Limitations/Issues

  • Only tested with Overwatch. Not all calls are captured correctly, so other games might be incorrect regarding colorusage
  • Still haven't found the correct layout as sent by Razer enabled games.
  • There is no real crash handeling, if the game crashes, something went wrong
  • Not all keys light up

Configuration

If a file called RazerInterceptor.cfg is pressent in the profile directory (so, %userprofile%/RazerInterceptor.cfg), this will be loaded. Otherwise default settings are loaded. This settings file is a simple key/value file. (eg: key = val)

The key layout can also be override by creating a file called RazerInterceptorKeyLayout.cfg file in your profile directory. This file contains HID codes that refer to the keys on your keyboard. Razer sends a list of colors, and this is matched to this list. So color 1 will match the ID entered on line 1. Only a single value per line. NOTE: SSE interprets the results as US english keyboard layout, but windows does translates it to the correct keyboard settings.

You can use the USB HID Usage Tables - chapter 10 for reference

Available settings

  • emitlogs (default: false). Emit logs to the user profile directory. WARNING This will tank your FPS due to disk IO.

Additional credits

The idea and base code comes from Nicholas Thomsons blog post. While he uses it in a different manner, the main hijack part was his idea. He also discusses methods to hijack and security in more detail.

razer-gamesense's People

Contributors

arxae avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.