Skip to content

corfe83/go-steamworks

This branch is 4 commits ahead of, 14 commits behind hajimehoshi/go-steamworks:main.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

dc01de2 · Oct 28, 2023

History

40 Commits
Jan 10, 2023
Aug 28, 2021
Mar 16, 2023
Oct 28, 2023
Jan 10, 2023
Aug 28, 2021
Oct 28, 2023
Oct 28, 2023
Oct 28, 2023
Oct 28, 2023
Dec 27, 2021
Dec 27, 2021
Dec 27, 2021
Oct 28, 2023
Oct 28, 2023

Repository files navigation

go-steamworks

** This project is still work in progress! **

A Steamworks SDK binding for Go

How to use

On Windows, copy one of these files on the working directory:

  • steam_api.dll (For 32bit. Copy redistribution_bin/steam_api.dll in the SDK)
  • steam_api64.dll (For 64bit. Copy redistribution_bin/win64/steam_api64.dll in the SDK)
package steamapi

import (
	"os"

	"github.com/hajimehoshi/go-steamworks"
	"golang.org/x/text/language"
)

const appID = 480 // Rewrite this

func init() {
	if steamworks.RestartAppIfNecessary(appID) {
		os.Exit(1)
	}
	if !steamworks.Init() {
		panic("steamworks.Init failed")
	}
}

func SystemLang() language.Tag {
	switch steamworks.SteamApps().GetCurrentGameLanguage() {
	case "english":
		return language.English
	case "japanese":
		return language.Japanese
	}
	return language.Und
}

License

All the source code files are licensed under Apache License 2.0.

These binary files are copied from Steamworks SDK's redistribution_bin directory. You must follow Valve Corporation Steamworks SDK Access Agreement for these files:

  • libsteam_api.dylib (copied from osx/libsteam_api.dylib)
  • libsteam_api.so (copied from linux32/libsteam_api.so)
  • libsteam_api64.so (copied from linux64/libsteam_api.so)
  • steam_api.dll (copied from steam_api.dll)
  • steam_api64.dll (copied from steam_api64.dll)

Resources

About

A Steamworks SDK binding for Go

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 100.0%