Skip to content

Commit

Permalink
Merge pull request #25 from GodotSteam/update
Browse files Browse the repository at this point in the history
Added new Skilet pages, new blog, new changelogs, and more.
  • Loading branch information
Gramps authored Aug 15, 2024
2 parents 404ffe2 + e856b29 commit 9ee4194
Show file tree
Hide file tree
Showing 19 changed files with 317 additions and 36 deletions.
28 changes: 28 additions & 0 deletions docs/blog/posts/15-08-2024.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
date:
created: 2024-08-15
---

# GodotSteam 4.10, Skillet, And You

## First, GodotSteam 4.10 And You

Godot 4.3 is out so now GodotSteam is updating to 4.10! You can download pre-compiled versions of the standard build, GDExtensions, or MultiplayerPeer from all the normal places. Big thing is the new GodotSteam is using the Flat API so, in theory, we can now use MinGW to compile. I have not tested this yet but will be doing some test builds soon.

Now for the GDExtension part. [There are two versions of the GDExtension currently available on the Github repo:](https://github.com/GodotSteam/GodotSteam/releases/tag/v4.10-gde){ target="\_blank" } _godotsteam-gdextension-plugin41_43.zip_ and _godotsteam-gdextension-plugin43.zip_ which are built with different Godot-cpp versions. The 4.1 branch that is cherry-picked fixes for maximum compatibility, as I understand it, and 4.3 which is the newest; these plug-ins are using their respective versions. The **41_43** version _should_ work fine in all Godot versions 4.1. If you notice any issues, please let us know and change over to the **43** version instead.

For now, the GodotSteam Asset Library version will contain the **41_43** variant.

Wait, where do you come in? Test, build, export, report!

## What's In The Skillet?

If you don't know, [Skillet's asset branch is live on the Skillet repo.](https://github.com/GodotSteam/Skillet/tree/assets){ target="\_blank" } It has achievement, Inventory, and UGC images already, icons, Steam store assets, and more. Also some templates if you want to add skins to the game yourself. Most importantly, it has the VDF files so you can see how these items are set up in the Steamworks backend.

Currently, none of the assets are allowed to be used in commercial projects and are under CC BY-NC-SA 4.0. Contributed assets may be under different licenses so check their assets folders first!

## Skillet Workshop Editor

Not just yet but soon we are releasing the Skillet Workshop Editor for easily adding items to Steam Workshop. It will be available as a download in the Skillet repo, source code so you can make changes or skin it for your own projects, and it will be available on Steam once Skillet releases.

More on that next week.
10 changes: 10 additions & 0 deletions docs/changelog/gdextension.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,16 @@ A history of all changes to [the ***gdextension*** branch.](https://github.com/G

---

## Version 4.10

- Changed: now using Steam Flat API, should allow compiling with MinGW
- Changed: updated in-editor docs

## Version 4.9.1

- Fixed: fixed typo in RESULT_ADMINISTRATOR_OK, ***thanks to sepTN***
- Fixed: fixed a variety of types and code corrections, ***thanks to bobsayhilol***

## Version 4.9

- Added: missing `user_achievement_icon_fetched` callback
Expand Down
10 changes: 10 additions & 0 deletions docs/changelog/godot4.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,16 @@ A history of all changes to [the ***godot4*** branch.](https://github.com/GodotS

---

## Version 4.10

- Changed: now using Steam Flat API, should allow compiling with MinGW
- Changed: updated in-editor docs

## Version 4.9.1

- Fixed: fixed typo in RESULT_ADMINISTRATOR_OK, ***thanks to sepTN***
- Fixed: fixed a variety of types and code corrections, ***thanks to bobsayhilol***

## Version 4.9

- Added: missing `user_achievement_icon_fetched` callback
Expand Down
7 changes: 6 additions & 1 deletion docs/changelog/multiplayer_peer.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,12 @@ A history of all changes to [the ***multiplayer-peer*** branch.](https://github.

---

## Version 4.9 Changes
## Version 4.10

- Changed: now using Steam Flat API, should allow compiling with MinGW
- Changed: updated in-editor docs

## Version 4.9

- Added: get_lobby_id() function to expose the lobby ID
- Removed: Mono flags from GA files
Expand Down
32 changes: 32 additions & 0 deletions docs/changelog/skillet_assets.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# Skillet Assets Change-Log

A history of all changes to [the ***assets*** branch of the Skillet repository.](https://github.com/GodotSteam/Skillet/tree/assets){ target="\_blank" }

---

## Version 1.4

- Added: new skins
- Added: Workshop items - Kenney and Wesley Pipes
- Updated: Steam store assets based on new Valve requirements

## Version 1.3

- Added: more achievement icons
- Added: more Inventory vdfs

## Version 1.2

- Added: templates for faces and bodies
- Added: new Inventory items and icons

## Version 1.1

- Added: achievement icons
- Added: rich presence vdf
- Added: Steam store assets
- Added: first UGC asset

## Version 1.0

- Added: Steam Inventory assets for various skins, cosmetics, etc.
7 changes: 7 additions & 0 deletions docs/changelog/skillet_editor.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Skillet Assets Change-Log

A history of all changes to [the ***editor*** branch of the Skillet repository.](https://github.com/GodotSteam/Skillet/tree/editor){ target="\_blank" }

---

Nothing yet...
8 changes: 4 additions & 4 deletions docs/classes/http.md
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ A small and easy to use HTTP client to send and receive data from the web.
!!! function "getHTTPResponseHeaderValue( ```uint32``` request_handle, ```string``` header_name, ```uint32``` buffer_size )"
Gets a header value from an HTTP response. This must be called after the HTTP request has completed and returned the HTTP response via the [http_request_completed](#http_request_completed) call result associated with this request handle. You should first call [getHTTPResponseHeaderSize](#gethttpresponseheadersize) to check for the presence of the header and to get the size. You can then allocate a buffer with that size and pass it into this function. Here is a list of standard response header names on [Wikipedia](https://en.wikipedia.org/wiki/List_of_HTTP_header_fields#Response_fields){ target="\_blank" }.

**Returns:** uint8
**Returns:** PackedByteArray (4.x) / PoolByteArray (3.x)

---
[:fontawesome-brands-steam: Read more in the official Steamworks SDK documentation](https://partner.steamgames.com/doc/api/ISteamHTTP#GetHTTPResponseHeaderValue){ .md-button .md-button--store target="_blank" }
Expand All @@ -109,7 +109,7 @@ A small and easy to use HTTP client to send and receive data from the web.
!!! function "getHTTPStreamingResponseBodyData( ```uint32``` request_handle, ```uint32``` offset, ```uint32``` buffer_size )"
Gets the body data from a streaming HTTP response. This must be called after data is received from a streaming HTTP request via the [http_request_completed](#http_request_completed) callback associated with this request handle. Typically you'll want to allocate a buffer associated with the request handle using the Content-Length HTTP response field to receive the total size of the data when you receive the header via [http_request_headers_received](#http_request_headers_received). You can then append data to that buffer as it comes in. This is only for streaming HTTP requests which were sent with [sendHTTPRequestAndStreamResponse](#sendhttprequestandstreamresponse). Use [getHTTPResponseBodyData](#gethttpresponsebodydata) if you're using [sendHTTPRequest](#sendhttprequest).

**Returns:** uint32
**Returns:** PackedByteArray (4.x) / PoolByteArray (3.x)

---
[:fontawesome-brands-steam: Read more in the official Steamworks SDK documentation](https://partner.steamgames.com/doc/api/ISteamHTTP#GetHTTPStreamingResponseBodyData){ .md-button .md-button--store target="_blank" }
Expand Down Expand Up @@ -260,12 +260,12 @@ A small and easy to use HTTP client to send and receive data from the web.

### setHTTPRequestRawPostBody

!!! function "setHTTPRequestRawPostBody( ```uint32``` request_handle, ```string``` content_type, ```uint32``` body_length )"
!!! function "setHTTPRequestRawPostBody( ```uint32``` request_handle, ```string``` content_type, ```string``` body )"
Sets the body for an HTTP Post request.

Will fail and return false on a GET request, and will fail if POST params have already been set for the request. Setting this raw body makes it the only contents for the post, the **content_type** parameter will set the "content-type" header for the request to inform the server how to interpret the body.

**Returns:** uint8
**Returns:** bool

---
[:fontawesome-brands-steam: Read more in the official Steamworks SDK documentation](https://partner.steamgames.com/doc/api/ISteamHTTP#SetHTTPRequestRawPostBody){ .md-button .md-button--store target="_blank" }
Expand Down
2 changes: 1 addition & 1 deletion docs/classes/inventory.md
Original file line number Diff line number Diff line change
Expand Up @@ -355,7 +355,7 @@ Steam Inventory query and manipulation API. See [Steam Inventory Service](https

A result set can be serialized on the local client, transmitted to other players via your game networking, and deserialized by the remote players. This is a secure way of preventing hackers from lying about posessing rare/high-value items. Serializes a result set with signature bytes to an output buffer. The size of a serialized result depends on the number items which are being serialized. When securely transmitting items to other players, it is recommended to use [getItemsByID](#getitemsbyid) first to create a minimal result set.

**Returns:** String
**Returns:** PackedByteArray (4.x) / PoolByteArray (3.x)

**Note:** If the argument **this_inventory_handle** is omitted, GodotSteam will use the internally stored ID.

Expand Down
2 changes: 1 addition & 1 deletion docs/classes/ugc.md
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ Functions to create, consume, and interact with the [Steam Workshop](https://pa

### initWorkshopForGameServer

!!! function "initWorkshopForGameServer( ```uint32_t``` workshop_depot_id )"
!!! function "initWorkshopForGameServer( ```uint32_t``` workshop_depot_id, ```string``` folder )"
Lets game servers set a specific workshop folder before issuing any UGC commands.

This is helpful if you want to support multiple game servers running out of the same install folder.
Expand Down
2 changes: 1 addition & 1 deletion docs/classes/user.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ Functions for accessing and manipulating Steam user information. This is also wh

### decompressVoice

!!! function "decompressVoice( ```PoolByteArray / PackedByteArray``` voice, ```uint32``` voice_size, ```uint32``` sample_rate )"
!!! function "decompressVoice( ```PoolByteArray / PackedByteArray``` voice, ```uint32``` sample_rate )"
Decodes the compressed voice data returned by [getVoice](#getvoice).

The output data is raw single-channel 16-bit PCM audio. The decoder supports any sample rate from 11025 to 48000. See [getVoiceOptimalSampleRate](#getvoiceoptimalsamplerate) for more information.
Expand Down
4 changes: 2 additions & 2 deletions docs/classes/user_stats.md
Original file line number Diff line number Diff line change
Expand Up @@ -272,7 +272,7 @@ Provides functions for accessing and submitting stats, achievements, and leaderb
!!! function "getGlobalStatFloatHistory( ```string``` name )"
Gets the daily history for an aggregated stat.

**Returns:** float
**Returns:** PackedFloat64Array (4.x) / PoolRealArray (3.x)

---
[:fontawesome-brands-steam: Read more in the official Steamworks SDK documentation](https://partner.steamgames.com/doc/api/ISteamUserStats#GetGlobalStatHistory){ .md-button .md-button--store target="_blank" }
Expand All @@ -282,7 +282,7 @@ Provides functions for accessing and submitting stats, achievements, and leaderb
!!! function "getGlobalStatIntHistory( ```string``` name )"
Gets the daily history for an aggregated stat.

**Returns:** uint64_t
**Returns:** PackedInt64Array (4.x) / PoolIntArray (3.x)

---
[:fontawesome-brands-steam: Read more in the official Steamworks SDK documentation](https://partner.steamgames.com/doc/api/ISteamUserStats#GetGlobalStatHistory){ .md-button .md-button--store target="_blank" }
Expand Down
12 changes: 6 additions & 6 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ Depending on what your end goals are, you will probably want to use a different
<span class="sep">[</span>
<span class="title">:simple-godotengine:{ .godotengine title="Godot Engine" }</span>
<span class="sep">|</span>
<span class="value">4.2.2</span>
<span class="value">4.3</span>
<span class="sep">]</span>
</span>
<span class="badge badge-normal tag-steam">
Expand All @@ -59,12 +59,12 @@ Depending on what your end goals are, you will probably want to use a different
<span class="sep">[</span>
<span class="title">:simple-godotengine:{ .steam title="GodotSteam" }</span>
<span class="sep">|</span>
<span class="value">4.9</span>
<span class="value">4.10</span>
<span class="sep">]</span>
</span>
</span>

[ :fontawesome-brands-github: Pre-compiled Editor and Templates](https://github.com/GodotSteam/GodotSteam/releases/tag/v4.9){ .md-button .md-button--downloads target="\_blank" }
[ :fontawesome-brands-github: Pre-compiled Editor and Templates](https://github.com/GodotSteam/GodotSteam/releases/tag/v4.10){ .md-button .md-button--downloads target="\_blank" }

[:octicons-plug-24: GDExtension | Godot Asset Library](https://godotengine.org/asset-library/asset/2445){ .md-button .md-button--downloads target="\_blank" }

Expand Down Expand Up @@ -111,7 +111,7 @@ Depending on what your end goals are, you will probably want to use a different
<span class="sep">[</span>
<span class="title">:simple-godotengine:{ .godotengine title="Godot Engine" }</span>
<span class="sep">|</span>
<span class="value">4.2.2</span>
<span class="value">4.3</span>
<span class="sep">]</span>
</span>
<span class="badge badge-normal tag-steam">
Expand All @@ -125,12 +125,12 @@ Depending on what your end goals are, you will probably want to use a different
<span class="sep">[</span>
<span class="title">:simple-godotengine:{ .steam title="GodotSteam MultiplayerPeer" }</span>
<span class="sep">|</span>
<span class="value">4.9</span>
<span class="value">4.10</span>
<span class="sep">]</span>
</span>
</span>

[ :fontawesome-solid-people-group: MultiplayerPeer Editor and Templates](https://github.com/GodotSteam/GodotSteam/releases/tag/v4.9-mp){ .md-button .md-button--downloads target="\_blank" }
[ :fontawesome-solid-people-group: MultiplayerPeer Editor and Templates](https://github.com/GodotSteam/GodotSteam/releases/tag/v4.10-mp){ .md-button .md-button--downloads target="\_blank" }

---

Expand Down
1 change: 1 addition & 0 deletions docs/projects/skillet/assets.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Coming Soon
1 change: 1 addition & 0 deletions docs/projects/skillet/editor.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Coming Soon
25 changes: 8 additions & 17 deletions docs/projects/skillet.md → docs/projects/skillet/intro.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
---
title: Skillet
description: The open-source and free-to-play game built to showcase GodotSteam's functionality.
---

# Skillet

{==
## :fontawesome-solid-question: What Is It?
==}
Expand Down Expand Up @@ -110,20 +117,4 @@ At launch, Skillet has some additional cosmetics and skins from based on other G

</div>

Post-launch we will reach out to more devs about adding more cosmetics and skins and, of course, any developer making a game with Godot can create a pull request in Skillet's repo to add their own cosmetics to the game. [If you would like to have your game included in Skillet, feel free to reach out by e-mail.](mailto:[email protected])

{==
## :material-license: The Licenses
==}

### Code

The code from Skillet is [licensed under MIT license](https://en.wikipedia.org/wiki/MIT_License){ target="\_blank" }. You may use any code from the repo for your projects as is or modified; in free or commercial games.

### Art Assets

The art assets in Skillet are housed in a private repo and are not available publicly or allowed to be used in any other projects. Skillet's public repo will contain placeholder versions that are [licensed under Creative Commons BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/){ target="\_blank" }.

### Font Assets

Both fonts used in Skillet were purchased and licensed from [Creative Fabrica](https://www.creativefabrica.com){ target="\_blank" } but are not included in the public repo due to licensing restriction.
Post-launch we will reach out to more devs about adding more cosmetics and skins and, of course, any developer making a game with Godot can create a pull request in Skillet's repo to add their own cosmetics to the game. [If you would like to have your game included in Skillet, feel free to reach out by e-mail.](mailto:[email protected])
Loading

0 comments on commit 9ee4194

Please sign in to comment.