Pre-release
Pre-release

@garrynewman garrynewman released this Dec 6, 2017 · 103 commits to master since this release

Assets 5

Changes

  • Throw exception if trying to create Client after Server
  • Workshop upload progress will return sane values
  • Fixed leaderboard.AddScore description
  • Renamed Achievement.Percentage to GlobalUnlockedPercentage
  • Fixed zero length packets clogging p2p queue
  • Added Leaderboard.OnBoardInformation callback
  • Added Friend.GetAvatar( size )
  • Friends.GetAvatar takes a callback instead of returning an Image
  • Added Friends.GetCachedAvatar - returns Image or null (old behaviour of Friends.GetAvatar)
  • Added Lobby.OnChatStringRecieved
  • Fixed Lobby sometimes losing chat messages
  • Added RemoteFile.Forget()
  • Voice no longer requires unsafe
  • Fixed RemoteStorage errors on osx/linux
  • Replaced netstandard1.6 with netstandard2.0
  • Added support for publishing workshop items from another app (tools)
  • Server Lists return IPAddress instead of int
  • Added ServerRequest.OnServerResponded
  • Added ServerRequest.OnFinished
  • Throw exception if trying to create a new instance when once exists
  • Fixed not being able to change the lobby owner
  • Added Screenshots.Write( data, width, height )
  • Changed Server.Stats.Set to SetInt/SetFloat
  • Server stats callback includes client steamid
  • Checks GameId on achievement callbacks
  • Added Achievments.OnAchievementStateChanged
  • Refresh achievements on startup
  • Calls on an unresolved leaderboard are deferred
  • Workshop Item Subscription

Breaking Changes

So some breaking changes there. Biggest one you'll probably run into is GetAvatar. If you're too lazy to fuck about just change the calls to GetCachedAvatar instead. The benefit of using GetAvatar with the callback is that if Steam hasn't downloaded that user's avatar, it'll download it so you don't have to test and refresh download manually.

Pre-release
Pre-release

@garrynewman garrynewman released this Jul 6, 2017 · 180 commits to master since this release

Assets 3

Changes

  • Added Stats.Set
  • Added Stats.Add
  • Added Friend.IsOnline
  • Added Friend.IsAway
  • Added Friend.IsBusy
  • Added Friend.IsSnoozing
  • Refactored Server Init
  • Simpified Client.RemoteStorage
  • Added Client.RestartIfNecessary (static)

New Server Init

Some people found it difficult to create a server that was actually visible in the previous versions. This was because to get your server listed you needed to fill in GameDescription, ModDir and Product. Since these things can't be changed at any point beyond initialization I've refactored the way servers are created.

Old Way:

var server = new Facepunch.Steamworks.Server( 252490, 0, 30003, 30004, 30005, false, "VersionString" ) 

New Way:

var serverInit = new ServerInit( "rust", "Rust" );
  serverInit.GamePort = 28015;
  serverInit.Secure = true;
  serverInit.QueryPort = 28016;

var server = new Facepunch.Steamworks.Server( 252490, serverInit )

This feels like a common sense change, making the process a bit more self documenting and a lot more foolproof. We've been using this new initialization method in Rust for a couple of weeks, so it's all tried and tested.

Missing Features

If you're using the library and are missing features - open a new issue and we'll try to add it as soon as possible.

Pre-release
Pre-release

@garrynewman garrynewman released this Jun 9, 2017 · 194 commits to master since this release

Assets 3
  • Updated to Steamworks SDK 1.40 (new redistributes included).
  • Added Client.CurrentLanguage + AvailableLanguages
  • Added NetCore support
  • Added Achievement support
  • Added RichPresence support
Pre-release
Pre-release

@garrynewman garrynewman released this Mar 16, 2017 · 236 commits to master since this release

Assets 3

Added leader-boards, a ton of App functions and fixed a bunch of bugs.

Pre-release
Pre-release

@garrynewman garrynewman released this Feb 13, 2017 · 241 commits to master since this release

Assets 3

Many many changes. Should better support 32bit systems. Uses Steamworks SDK v1.39.

Pre-release
Pre-release

@garrynewman garrynewman released this Nov 1, 2016 · 313 commits to master since this release

Assets 4

Newly generated code. This should better support osx/linux.

Pre-release
Pre-release

@garrynewman garrynewman released this Oct 21, 2016 · 379 commits to master since this release

Assets 3

Obviously incomplete, but has all of the basics. Holla if you need help.