SteelSeries / gamesense-sdk

471 stars 145 forks source link

SteelSeries GameSense™ SDK

GameSense™ is a framework in SteelSeries Engine that allows games & apps to send status updates to Engine, which can then drive illumination, haptic & OLED display capabilities of SteelSeries devices. One simple example would be displaying the player's health on the row of functions keys as a bargraph that gets shorter and changes from green to red as their health decreases -- even flashing when it gets critically low.

This repository contains documentation, tutorials, and examples for developers wishing to support GameSense™ in their games or applications.

Documentation

Getting Started

How a game can register and send events to GameSense™.

How to specify event handlers in JSON from a game, for an out-of-the-box user customizable experience.

How to control device illumination

How to write full-keyboard lighting effects

How to control OLED screens

How to control tactile feedback

How to add support for Moments

GoLisp Handlers

How to write handlers in GoLisp, for the ultimate flexibility and power.

Reference

List of standard zones that can be used in handlers

List of event icons that can be used with OLED screen handlers

Tutorials

Turn an RGB device into an audio spectrum analyzer, using the GoLisp handlers

Writing a mod for MineCraft to support GameSense™

Writing a mod for MineCraft to support GameSense™, Part 2, writing advanced handlers to work with the events being sent from the mod presented in part 1.

Support tutorial on modding MineCraft

Customizing built-in CS:GO event handling with GoLisp, read (https://github.com/SteelSeries/gamesense-sdk/blob/master/doc/api/writing-handlers-in-golisp.md) first.

Sample Code

examples/audiovisualizer Code to go with doc/tutorials/audiovisualizer_tutorial.md.

examples/minecraftforge1.8 Code for the GameSense™ Minecraft mod

Submitting a game or app for approval

You actually don't need to submit anything to us.

Feel free to release your own app, and anyone who has your game/app installed should see it appear as a GameSense App inside of SteelSeries Engine. We want smaller devs to be able to develop their implementation completely on their own if they so choose.

Want to partner up and have a full curated experience for our mutual users?

Great, we do too. Contact us through this form and we'll get back to you right away. We can add images, text, links, and other info about your project. We can also help you with implementation, answer questions, and a lot more.

Project info we'll ask for: