zaqzaq / JavaSteam

Java library that provides an interface to directly interact with Valve's Steam servers.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

JavaSteam

Build Status codecov Discord

Work-in-progress Java port of SteamKit2. JavaSteam targets Java 7.

Download

Currently only snapshot builds are available on Sonatype's snapshot repository.

If you get a java.security.InvalidKeyException: Illegal key size or default parameters exception when trying to encrypt a message you need to download the Unlimited Strength Jurisdiction Policy Files and place them under ${java.home}/jre/lib/security/. See this stackoverflow question.

1. Add the snapshot repository to your build.

Gradle

repositories {
    maven {
        url 'https://oss.sonatype.org/content/repositories/snapshots/'
    }
}

Maven

<repository>
  <id>snapshots-repo</id>
  <url>https://oss.sonatype.org/content/repositories/snapshots/</url>
</repository>

2. Add the JavaSteam dependency to your project.

Gradle

implementation 'in.dragonbra:javasteam:1.0.0-SNAPSHOT'

Maven

<dependency>
  <groupId>in.dragonbra</groupId>
  <artifactId>javasteam</artifactId>
  <version>1.0.0-SNAPSHOT</version>
</dependency>

3. Add the appropriate cryptography dependency to your project. JavaSteam depends on this.

Gradle

implementation 'org.bouncycastle:bcprov-jdk15on:1.60'  // NON-ANDROID ONLY
implementation 'com.madgag.spongycastle:prov:1.58.0.0' // ANDROID ONLY

Maven

<dependency> <!-- NON-ANDROID ONLY -->
  <groupId>org.bouncycastle</groupId>
  <artifactId>bcprov-jdk15on</artifactId>
  <version>1.60</version>
</dependency>
<dependency> <!-- ANDROID ONLY -->
    <groupId>com.madgag.spongycastle</groupId>
    <artifactId>prov</artifactId>
    <version>1.58.0.0</version>
</dependency>

Getting Started

You can head to the very short Getting Started page or take a look at the samples to get you started with using this library. There some open-source projects too you can check out.

Build

./gradlew build

Contributing

Contributions to the repository are always welcome! Checkout the contribution guidelines to get started.

Other

Join the discord server if you have any questions related or unrelated to this repo or just want to chat!

License

This project is licensed under the MIT License - see the LICENSE file for details

About

Java library that provides an interface to directly interact with Valve's Steam servers.

License:MIT License


Languages

Language:Java 93.7%Language:Groovy 5.7%Language:JavaScript 0.5%