From 5d54156d29bceebc07ba664ac5efe5b20a66b270 Mon Sep 17 00:00:00 2001 From: GP Garcia Date: Wed, 31 Jan 2024 18:02:22 -0600 Subject: [PATCH] Added links to change logs, updated ugc and stats classes, some tuts updates --- docs/assets/stylesheets/extra.css | 9 +++++++-- docs/changelog/gdextension.md | 2 +- docs/changelog/gdnative.md | 2 +- docs/changelog/godot2.md | 2 +- docs/changelog/godot3.md | 2 +- docs/changelog/godot4.md | 2 +- docs/changelog/multiplayer_peer.md | 2 +- docs/changelog/server3.md | 2 +- docs/changelog/server4.md | 2 +- docs/changelog/server_gdextension.md | 2 +- docs/changelog/server_gdnative.md | 2 +- docs/classes/ugc.md | 6 +++++- docs/classes/user_stats.md | 2 +- docs/tutorials/external.md | 9 +++++++++ docs/tutorials/leaderboards.md | 24 +++++++++++++++++++++++- docs/tutorials/workshop.md | 8 ++++++++ 16 files changed, 63 insertions(+), 15 deletions(-) diff --git a/docs/assets/stylesheets/extra.css b/docs/assets/stylesheets/extra.css index 99a27847..f9f41616 100644 --- a/docs/assets/stylesheets/extra.css +++ b/docs/assets/stylesheets/extra.css @@ -96,9 +96,11 @@ label span.twemoji { word-break: break-word; text-decoration: underline; } -.md-typeset a:hover { +.md-typeset a:hover, +.md-typeset a:focus, +.md-typeset a:active { color: #478cbf; - text-decoration: underline; + text-decoration: none; } .md-typeset pre { color: #fff; @@ -993,6 +995,9 @@ html .md-footer-meta.md-typeset a:is(:focus, :hover) { white-space:nowrap; min-width:10em; } +.md-typeset .tabbed-labels--linked > label > a { + padding: 0 !important; +} .md-typeset .tabbed-labels::before { background: #478CBF !important; } diff --git a/docs/changelog/gdextension.md b/docs/changelog/gdextension.md index 4d88c717..c61cc2a9 100644 --- a/docs/changelog/gdextension.md +++ b/docs/changelog/gdextension.md @@ -1,6 +1,6 @@ # Godot 4.x GDExtension Change-Log -A history of all changes to the ***gdextension*** branch. +A history of all changes to [the ***gdextension*** branch.](https://github.com/CoaguCo-Industries/GodotSteam/tree/gdextension){ target="\_blank" } --- diff --git a/docs/changelog/gdnative.md b/docs/changelog/gdnative.md index 18812e51..560a6c7e 100644 --- a/docs/changelog/gdnative.md +++ b/docs/changelog/gdnative.md @@ -1,6 +1,6 @@ # GDNative Change-Log -A history of all changes to the ***gdnative*** branch. +A history of all changes to [the ***gdnative*** branch.](https://github.com/CoaguCo-Industries/GodotSteam/tree/gdnative){ target="\_blank" } --- diff --git a/docs/changelog/godot2.md b/docs/changelog/godot2.md index 3053601f..503e8c9a 100644 --- a/docs/changelog/godot2.md +++ b/docs/changelog/godot2.md @@ -1,6 +1,6 @@ # Godot 2.x Change-Log -A history of all to the ***godot2*** branch. +A history of all to [the ***godot2*** branch.](https://github.com/CoaguCo-Industries/GodotSteam/tree/godot2){ target="\_blank" } --- diff --git a/docs/changelog/godot3.md b/docs/changelog/godot3.md index 8557e444..d027fcbc 100644 --- a/docs/changelog/godot3.md +++ b/docs/changelog/godot3.md @@ -1,6 +1,6 @@ # Godot 3.x Change-Log -A history of all to the ***godot3*** branch. +A history of all to [the ***godot3*** branch.](https://github.com/CoaguCo-Industries/GodotSteam/tree/godot3){ target="\_blank" } --- diff --git a/docs/changelog/godot4.md b/docs/changelog/godot4.md index f9296106..fcefce45 100644 --- a/docs/changelog/godot4.md +++ b/docs/changelog/godot4.md @@ -1,6 +1,6 @@ # Godot 4.x Change-Log -A history of all changes to the ***godot4*** branch. +A history of all changes to [the ***godot4*** branch.](https://github.com/CoaguCo-Industries/GodotSteam/tree/godot4){ target="\_blank" } --- diff --git a/docs/changelog/multiplayer_peer.md b/docs/changelog/multiplayer_peer.md index ba5c5977..deaf5cd4 100644 --- a/docs/changelog/multiplayer_peer.md +++ b/docs/changelog/multiplayer_peer.md @@ -1,6 +1,6 @@ # Multiplayer Peer Change-Log -A history of all changes to the ***multiplayer-peer*** branch. +A history of all changes to [the ***multiplayer-peer*** branch.](https://github.com/CoaguCo-Industries/GodotSteam/tree/multiplayer-peer){ target="\_blank" } --- diff --git a/docs/changelog/server3.md b/docs/changelog/server3.md index 0cf5309f..e3bdd05b 100644 --- a/docs/changelog/server3.md +++ b/docs/changelog/server3.md @@ -1,6 +1,6 @@ # Server 3.x Change-Log -A history of all changes to the ***server3*** branch. +A history of all changes to [the ***server3*** branch.](https://github.com/CoaguCo-Industries/GodotSteam-Server/tree/godot3){ target="\_blank" } --- diff --git a/docs/changelog/server4.md b/docs/changelog/server4.md index 3d8171a9..fedae97c 100644 --- a/docs/changelog/server4.md +++ b/docs/changelog/server4.md @@ -1,6 +1,6 @@ # Server 4.x Change-Log -A history of all changes to the ***server4*** branch. +A history of all changes to [the ***server4*** branch.](https://github.com/CoaguCo-Industries/GodotSteam-Server/tree/godot4){ target="\_blank" } --- diff --git a/docs/changelog/server_gdextension.md b/docs/changelog/server_gdextension.md index 3c2bafa0..76507c6c 100644 --- a/docs/changelog/server_gdextension.md +++ b/docs/changelog/server_gdextension.md @@ -1,6 +1,6 @@ # Server GDExtension Change-Log -A history of all changes to the ***server gdextension*** branch. +A history of all changes to [the ***server gdextension*** branch.](https://github.com/CoaguCo-Industries/GodotSteam-Server/tree/gdextension){ target="\_blank" } --- diff --git a/docs/changelog/server_gdnative.md b/docs/changelog/server_gdnative.md index 0a4f289b..ef7cf920 100644 --- a/docs/changelog/server_gdnative.md +++ b/docs/changelog/server_gdnative.md @@ -1,6 +1,6 @@ # Server GDNative Change-Log -A history of all changes to the ***server gdnative*** branch. +A history of all changes to [the ***server gdnative*** branch.](https://github.com/CoaguCo-Industries/GodotSteam-Server/tree/gdnative){ target="\_blank" } --- diff --git a/docs/classes/ugc.md b/docs/classes/ugc.md index 43ac4e71..69d29d69 100644 --- a/docs/classes/ugc.md +++ b/docs/classes/ugc.md @@ -339,6 +339,8 @@ Functions to create, consume, and interact with theĀ [Steam Workshop](https://pa * processed (uint64) * total (uint64) + You may notice that data comes back in ***processed*** and ***total*** in status 2; unsure if this is a bug or intended. + --- [:fontawesome-brands-steam: Read more in the official Steamworks SDK documentation](https://partner.steamgames.com/doc/api/ISteamUGC#GetItemUpdateProgress){ .md-button .md-button--store target="_blank" } @@ -1330,7 +1332,9 @@ These callbacks require you to run ```Steam.run_callbacks()``` in your ```_proce **Returns:** * result (int) - * accept_tos (bool) + * need_to_accept_tos (bool) + + If **need_to_accept_tos** comes back true, you should direct the user to accept the legal agreement. --- [:fontawesome-brands-steam: Read more in the official Steamworks SDK documentation](https://partner.steamgames.com/doc/api/ISteamUGC#SubmitItemUpdateResult_t){ .md-button .md-button--store target="_blank" } diff --git a/docs/classes/user_stats.md b/docs/classes/user_stats.md index 4673089b..f082602c 100644 --- a/docs/classes/user_stats.md +++ b/docs/classes/user_stats.md @@ -628,7 +628,7 @@ Provides functions for accessing and submitting stats, achievements, and leaderb **Returns:** int - The current leaderboard details max value. + The current leaderboard details max value. This can only go as high as k_cLeaderboardDetailsMax / 256. **Note:** This is a GodotSteam specific function. diff --git a/docs/tutorials/external.md b/docs/tutorials/external.md index 90932be4..b4dc41ca 100644 --- a/docs/tutorials/external.md +++ b/docs/tutorials/external.md @@ -34,6 +34,15 @@ We have quite a few tutorials and many more in the works but the more the merrie [ :simple-godotengine: 'Godot Auto Export' by Mr.Eliptik](https://mreliptik.dev/godot-auto-export){ .md-button .md-button--resource target="\_blank" } +{== +## Debugging Resources +==} + +[ :simple-steam: 'Debugging the Steamworks API' by Valve ](https://partner.steamgames.com/doc/sdk/api/debugging){ .md-button .md-button--resource target="\_blank" } + +[ :simple-steam: 'How to debug Windows games on Steam Deck' by Valve ](https://partner.steamgames.com/doc/steamdeck/debugging){ .md-button .md-button--resource target="\_blank" } + +[ :simple-godotengine: 'Overview of debugging tools' by Godot ](https://docs.godotengine.org/en/stable/tutorials/scripting/debug/overview_of_debugging_tools.html){ .md-button .md-button--resource target="\_blank" } {== ## Steam-related Godot Tools diff --git a/docs/tutorials/leaderboards.md b/docs/tutorials/leaderboards.md index 2f5fb558..852e9a5d 100644 --- a/docs/tutorials/leaderboards.md +++ b/docs/tutorials/leaderboards.md @@ -90,7 +90,29 @@ For the most part you are just looking for a success of 1 to tell that it worked - **score_changed:** if the score was changed (0 if false, 1 if true) - **new_rank:** the new global rank of this player - **prev_rank:** the previous rank of this player - + +### Passing Extra Details + +If you want to pass extra details, here are some neat hints from ***sepTN***: + +> You can add small data as detail, for example embedding the character name (as a string) into that leaderboard entry. If you try to put detail that has a bigger size than possible, it will simply ignore it. To retrieve it, you need to process it again because Steam will spit out arrays (PackedInt32Array). + +Here is some code that was shared: + +=== "Godot 2.x / 3.x" + + ``` + # Godot 2 and 3 have no equivalent for to_int32_array I am aware of. Any corrections welcome! + # + Steam.uploadLeaderboardScore(score, keep_best, var2bytes(details), handle) + ``` + +=== "Godot 4.x" + + ``` + Steam.uploadLeaderboardScore(score, keep_best, var_to_bytes(details).to_int32_array(), handle) + ``` + {== ## Downloading Scores ==} diff --git a/docs/tutorials/workshop.md b/docs/tutorials/workshop.md index 04142af0..226f71d1 100644 --- a/docs/tutorials/workshop.md +++ b/docs/tutorials/workshop.md @@ -255,3 +255,11 @@ func _on_item_updated(p_result : int, p_accept_tos : bool) -> void: if p_accept_tos: Steam_Workshop.open_tos() ``` + +{== +## Weird Issues +==} + +***KarpPaul*** had some information about getting "access is denied" from `getQueryUGCResult`: + +> Regarding the issue that I had with steamworks (Steam.getQueryUGCResult returns "access is denied" when the workshop is set visible to developers and customers). I talked to steam support and they were not able to reproduce the error. I checked the ipc log and indeed everything looks normal - no access denied results in steam logs. However, the error is still in the game. No idea why this happens and how, maybe I am doing smth wrong. I wonder if anybody else will encounter this.... anyway, it is not critical, so I just make my workshop visible to everyone and decide to ignore the issue for now. \ No newline at end of file