161 Commits
Author SHA1 Message Date
dependabot[bot] 25108a5296 Bump actions/setup-python from 6 to 7 (#4)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 6 to 7.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
v1.2.161
2026-07-26 12:47:56 +00:00
Nicholas Hastings 71ceb89241 Update auto versioning v1.2.160 2026-07-13 17:55:53 -04:00
Nicholas Hastings f1c9faba45 Fix build 2026-07-13 17:55:04 -04:00
A1m` a86fc4af91 Fix circular includes and include cleanup (#3)
* Fix circular includes and include cleanup

Fixed a bug where other *.h header files would include extension.h, which itself
was already included in those same headers, creating a circular dependency cycle.
This caused build errors and made compilation unpredictable.

To resolve this:
- Moved implementation-only includes to .cpp files where they are actually needed.
- Added forward declarations where possible to avoid pulling in unnecessary headers.
- Ensured extension.h only contains declarations that require full type definitions.

This improves build stability and compilation time.

* Clean up includes and fix build errors

- Replaced full includes with forward declarations where possible
- Moved implementation-only includes from .h to .cpp files
- Added missing includes for stdint.h and Steam interfaces
- This significantly reduces compilation time and prevents future dependency issues

* Switch to SourceMod SDK smsdk_ext instead of local copy
2026-07-13 21:43:05 +00:00
A1m` 07fc524d27 Fixed incorrect use of ReferenceToIndex, which caused some functions to be unstable during client connection. (#2)
While this function works well with the client indexes we pass in, as its name
suggests, we should essentially be passing player references, not client indexes.
The problem is that SourceMod looks for this player in the entity list, but they
might not be there when connecting, or they might be another client or a bot.

This makes the code unstable and confusing, and it works intermittently.
Steam doesn't care whether the player is in the entity list—it works with the
Steam ID. Using ReferenceToIndex here is fundamentally wrong and causes random
-1 errors, especially during OnClientConnect when the entity may not exist yet.

This commit replaces it with a direct client index lookup, which is correct and
reliable because params[1] is already a client index.
v1.2.3-git157
2026-07-13 21:39:04 +00:00
Nicholas Hastings 8fd7a1988c Update extension author and repository URL v1.2.3-git156 2026-07-12 22:40:00 -04:00
Nicholas Hastings 65936e7d9c Fix size_t truncation warning in SetHTTPRequestRawPostBodyFromFile 2026-07-12 22:10:00 -04:00
Nicholas Hastings 645103735e Fix streaming HTTP response header and data callbacks 2026-07-12 21:20:00 -04:00
Nicholas Hastings a779d6d961 Expose SetAdvertiseServerActive v1.2.3-git153 2026-07-12 15:17:29 -04:00
Nicholas Hastings c82feb1a4a Add methodmap for SteamWorksHTTPRequest v1.2.3-git152 2026-07-12 13:59:38 -04:00
Nicholas Hastings ceeaf66b95 Add function docs to inc 2026-07-12 13:31:37 -04:00
Nicholas Hastings 8eaea7217c Update EResult and EHTTPStatusCode v1.2.3-git150 2026-07-12 13:16:28 -04:00
Nicholas Hastings 482491616f Update plugins/inc to use transitional syntax (#1)
* Update plugins/inc to use transitional syntax

* Add CI job for validating plugins/inc

* ci: work around broken entrypoint in sourcemod-spcomp image

* ci: only compile Pawn plugins against master includes

* ci: restore per-version compile-plugins matrix now that spcomp images are fixed

* ci: reuse sm.branch as the image tag directly
v1.2.3-git149
2026-07-12 17:11:09 +00:00
Nicholas Hastings 39fcfa564e Modernize build/CI, support SourceMod 1.13, deprecate ForceHeartbeat
Rework the build and CI: swap to SourceMod's safetyhook-based CDetour and
drop the vendored CDetour/asm sources, the old Makefile, Travis config, and
buildbot perl scripts. Add GitHub Actions building and releasing x86 and
x86_64 against SM 1.12 and 1.13, plus dependabot. Split the Windows and Linux
packages and tidy naming.

Gate IPluginManager::FindPluginByContext on the extension API version so the
extension builds against both SM 1.12 (API 8) and 1.13 (API 9), and shim
DETOUR_CREATE_STATIC_FIXED over the address overload safetyhook exposes.

Deprecate SteamWorks_ForceHeartbeat: newer Steamworks SDKs removed
ISteamGameServer::ForceHeartbeat, so make the native a no-op and mark it
deprecated in the include.
v1.2.3-git148
2026-07-12 10:56:36 -04:00
Arron Vinyard f0c1b62dff sw.inc: fix placement in include (#37)
Incorrect syntax
2023-04-02 16:47:51 -07:00
Kyle Sanderson e51d2be1ff build: i686 is what AlfredR enjoyed. 2020-08-22 16:35:55 -07:00
Kyle Sanderson 22ba62c32c travis-ci: remove static ambuild 2.1 clone 2020-08-22 16:29:55 -07:00
David Anderson fd9a281f17 build: AMBuild 2.2 uplift (#32) 2020-08-22 16:17:05 -07:00
Kyle Sanderson 6b130d1a24 Update AMBuildScript 2020-08-22 15:17:11 -07:00
Kyle Sanderson dc09e7d682 GH actions: initial commit. 2020-08-22 14:21:20 -07:00
Kyle Sanderson 6801504424 travis-ci: irrelevant clowns fucked the build (#30).
Bit of a tough one. Looks like @wildcard65 and @pganssle are trying to cause a python4 equivalent with trivial changes. In short: not cool.
2020-07-31 21:30:46 -07:00
peace-maker ef731826dd gc: don't double call RetrieveMessage (#27)
The original function is called already using `SH_CALL`, so always supercede in the hook afterwards to not call it twice.

The forward definition had an extra unused parameter defined.
2020-07-11 13:35:30 -07:00
Kyle Sanderson acd1d08c99 travis-ci: add mac build + prototype for windows.
additionally fix base-requirements.
2020-05-31 19:39:43 -07:00
Kyle Sanderson 6aa092d3fd travis-ci: bug apparently with wildcards... 2020-05-31 16:07:37 -07:00
Kyle Sanderson 762ca7b791 travis-ci: correct extension. 2020-05-31 15:54:48 -07:00
Kyle Sanderson e9cd7747f4 travis-ci: Create archive. 2020-05-31 15:49:26 -07:00
Kyle Sanderson e38d614df9 travis-ci: ruby sucks :( 2020-05-31 15:40:49 -07:00
Kyle Sanderson 6b09c975b8 Enable Travis-CI + Buildfix (#25)
* Update gsnatives.cpp

* Update swgameserver.h

* Update .travis.yml
2020-05-31 15:26:03 -07:00
Kyle Sanderson a5905873cc SDK buildfix 2020-05-31 15:09:48 -07:00
Kyle Sanderson 534a692a6c GC: fix RetrieveMessage forward. 2020-03-31 09:59:54 -07:00
Kyle Sanderson 9fb35e2f96 Finally got caught out in 1.10 with funcenum being removed; forward/bcompat added. 2018-09-24 23:18:21 -07:00
Kyle Sanderson 775bc1ae03 Ext version bump. 2018-09-02 13:07:30 -07:00
Sikari 87ba54f237 Implement SetHTTPRequestRawPostBodyFromFile (#24)
* Implement SetHTTPRequestRawPostBodyFromFile

* Made sure that retval of fread() matches filesize

* Minor code cleanup

* Moved sm_SetHTTPRequestRawPostBodyFromFile to its appropriate place in the file

* style
2018-09-02 13:03:18 -07:00
Nicholas Hastings df97c60298 Expose ISteamGameServer::SetGameData (#23)
* Some men just want to watch the world burn.

* Fix an awful regression psychonic has introduced into the tree.
2018-07-19 19:55:51 -07:00
EXE KL c97fa05521 Add Patch Method to ISteamHTTP include (#22)
* Patch Method

Merely wanted to add PATCH to the httpmethod enum but I can't create an issue.
https://partner.steamgames.com/doc/api/ISteamHTTP#EHTTPMethod

* Update SteamWorks.inc

shriek
2018-07-09 09:24:18 -07:00
Kyle Sanderson 6c36535c98 Hook GC/GS immediately if available on extension load. 2017-08-23 20:44:01 -07:00
Kyle Sanderson 1f096ac7ac Fix GameCoordinator never being rehooked after ISteamClient destruction. 2017-08-23 20:43:07 -07:00
Kyle Sanderson 363cb295f8 SDK 1.37 buildfix. 2017-08-22 19:36:09 -07:00
Kyle Sanderson d3022555e5 good ol' reinterpret_cast versus static_cast. 2017-08-09 15:32:51 -07:00
Kyle Sanderson 8978e6accd Commit missing ISteamHTTP Natives. SourceTree is awful. 2017-08-09 13:23:08 -07:00
GoD-Tony 4274dae295 Added native for SetMapName (#19) 2016-10-18 06:26:08 -06:00
Kyle Sanderson d1f183a259 Initialize corner case GC variables before they're passed to Pawn. 2016-10-15 15:02:48 -07:00
Kyle Sanderson d1a0d8921f If GameServer function is unavailable for ISteamClient, try retail client. 2016-06-17 17:44:55 -07:00
Kyle Sanderson 06359a00e1 Add SteamWorks_SendMessageToGC to the optional native list. 2016-04-25 16:02:26 -07:00
Kyle Sanderson 71dd55aaf9 Wilson is going to show up pretty soon (lack of cast). 2016-04-25 15:47:27 -07:00
Kyle Sanderson 44430b167c Preserve sanctity of SteamWorksGameServer::Reset(void) from ba825b9a6e. 2016-04-25 15:38:13 -07:00
Kyle Sanderson 401ee13b8f Use proper casting for function based pointers. 2016-04-24 16:57:23 -07:00
Kyle Sanderson ba825b9a6e CS:GO fix for unreleased SteamWorks SDK (untested). 2016-04-24 16:50:44 -07:00
Kyle Sanderson 05a8e4e037 Spell Retrieve properly... 2016-03-05 21:05:54 -08:00
Kyle Sanderson 5cd391a31b Add SteamWorks_SendMessageToGC (untested as well). 2016-03-05 17:32:16 -08:00