Greenworks Versions Save

a node.js plugin to integrate nw.js/electron games with steamworks

v0.16.0

1 month ago
  • Update to Steamworks SDK 1.59
  • Greenworks copmiled for NW.js v0.86.0
  • Add greenworks.activateGameOverlayToStore API #280

v0.15.0

6 months ago
  • Update to Steamworks SDK 1.58
  • Greenworks copmiled for NW.js v0.82.0
  • Greenworks addon on mac is a universal binary (x86_64 and arm64)
  • New APIs:
    • greenworks.isSteamRunningOnSteamDeck()
    • greenworks.indicateAchievementProgress(achievement, current, max)
    • greenworks.getFriendGamePlayed(steamIDFriend)
    • greenworks.getLaunchCommandLine()
    • greenworks.getFriendPersonaName(raw_steam_id)
    • greenworks.setRichPresence(pchKey, pchValue)
    • greenworks.ClearRichPresence()
    • greenworks.getFriendRichPresence(steamIDFriend, pchKey)
    • greenworks.setPlayedWith(steamIDUserPlayedWith)
    • greenworks.activateGameOverlayInviteDialog(steamIDLobby)
    • greenworks.activateGameOverlayToUser(pchDialog, CSteamID steamID)
    • greenworks.createLobby(lobbyType, maxMembers)
    • greenworks.deleteLobbyData(steamIDLobby, pchKey)
    • greenworks.getLobbyByIndex(iLobby)
    • greenworks.getLobbyData(steamIDLobby, pchKey)
    • greenworks.getLobbyMemberByIndex(steamIDLobby, iMember)
    • greenworks.getNumLobbyMembers(steamIDLobby)
    • greenworks.getLobbyOwner(steamIDLobby)
    • greenworks.inviteUserToLobby(steamIDLobby, steamIDInvitee)
    • greenworks.joinLobby(steamIDLobby)
    • greenworks.leaveLobby(steamIDLobby)
    • greenworks.setLobbyData(steamIDLobby, pchKey, pchValue)
    • greenworks.setLobbyJoinable(steamIDLobby, bLobbyJoinable)
    • greenworks.setLobbyOwner(steamIDLobby, steamIDNewOwner)
    • greenworks.setLobbyType(steamIDLobby, eLobbyType)
    • greenworks.ugcGetItemState(published_file_id)
    • greenworks.ugcGetItemInstallInfo(published_file_id)
    • greenworks.getIPCountry()
    • greenworks.isSteamInBigPictureMode()
    • greenworks.getDLCDataByIndex(index)
    • greenworks.getAppBuildId()
    • greenworks.isAppInstalled(appId)
    • greenworks.getAppInstallDir(app_id, buffer, buffer_size)
  • New events:
    • new-url-launch-parameters
    • rich-presence-join-requested
    • lobby-created
    • lobby-data-update
    • lobby-enter
    • lobby-invite
    • lobby-join-requested
  • Fix incorrect index on canelAuthticket API
  • Fix "Error on saving file on local machine" bug, #178
  • Fix requestUserInformation API not returning result

v0.14.0

5 years ago
  • Greenworks complied for for NW.js v0.31.5, v0.32.4, v0.33.3 and Electron v3.0.9, v4.0.0-beta 7 with Steamworks SDK 1.42
  • Fix an infinite loop in ugcGetUserItems, #203 (thanks to @Emad88)

v0.13.0

6 years ago
  • Greenworks complied for NW.js v0.27.5, v0.28.3, v0.29.4, v0.30.4 and Electron v2.0.0 with Steamworks SDK 1.42
  • Extend workshop APIs:
    • Add options parameter to publishWorkshopFile, updatePublishedWorkshopFile, ugcGetItems, ugcGetUserItems, and ugcSynchronizeItems
  • Add APIs for enumerating files on cloud: getFileCount and getFileNameAndSize

v0.12.0

6 years ago
  • Greenworks complied for NW.js v0.24.4, v0.25.4 & v0.26.6 with Steamworks SDK 1.41

v0.11.0

6 years ago
  • Greenworks complied for NW.js v0.23.7 & Electron v1.8.0 Beta with Steamworks SDK 1.41
  • Add micro-txn-authorization-response event, thanks to @MadSpyxFR

v0.10.0

6 years ago
  • Greenworks complied for NW.js v0.22.3 & Electron 1.7.2 Beta with Steamworks SDK 1.40
  • Add APIs for setting user stats:
    • greenworks.getStatInt(name)
    • greenworks.getStatFloat(name)
    • greenworks.setStat(name, value)
    • greenworks.storeStats(success_callback, [error_callback])
  • Fix a potential crash of getNickname()
  • Fix ugcGetItems returns an empty array in some scenarios

v0.9.0

7 years ago
  • Greenworks complied for NW.js v0.20.3 & Electron v1.6.1 with Steamworks SDK 1.39
  • Update to Steamworks SDK 1.39, thanks to @MadSpyxFR:
    • greenworks.FriendFlags.Suggested has been removed
  • Add DLC APIs, #122:
    • greenworks.getDLCCount()
    • greenworks.isDLCInstalled(dlc_app_id)
    • greenworks.installDLC(dlc_app_id)
    • greenworks.uninstallDLC(dlc_app_id)

v0.8.0

7 years ago
  • Greenworks complied for NW.js v0.18.8 & v0.19.4 with Steamworks SDK 1.38a
  • Greenworks now requires libsdkencryptedappticket library. Plese copy it to the directory of your game.
  • Update to Steamworks SDK 1.38a, thanks to @MadSpyxFR, some changes from Steamworks SDK:
    • SteamFriends suggest relationship type now is deprecated
    • greenworks.getCloudQuota returns a String representing 64 bits integer
  • Add greenworks.deleteFile API, thanks to @dfabulich
  • Add greenworks.getAppId API
  • Add APIs for ticket decryption:
    • The ticket in greenworks.getAuthSessionTicket and greenworks.getEncryptedAppTicket callback is a Buffer type
    • greenworks.decryptAppTicket
    • greenworks.isTicketForApp
    • greenworks.getTicketIssueTime
    • greenworks.getTicketSteamId
    • greenworks.getTicketAppId
  • Fix: potential issues causing by mismatched new/delete usage

v0.7.0

7 years ago
  • Greenworks complied for NW.js v0.17.3 with Steamworks SDK 1.37
  • Greenworks complied for Electron v1.4.0 with Steamworks SDK 1.37
  • Add getFriendAvatar APIs, #89:
    • avatar-image-loaded event.
    • greenworks.getSmallFriendAvatar(raw_steam_id)
    • greenworks.getMediumFriendAvatar(raw_steam_id)
    • greenworks.getLargeFriendAvatar(raw_steam_id)
    • greenworks.getImageSize(handle)
    • greenworks.getImageRGBA(handle)
  • Add P2P chat APIs, #91:
    • game-connected-friend-chat-message event
    • greenworks.setListenForFriendsMessage(intecept_enabled)
    • greenworks.replyToFriendMessage(raw_steam_id, message)
    • greenworks.getFriendMessage(raw_steam_id, message_id, maximum_message_size)