steamworks-ffi-node 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/README.md +86 -10
  2. package/dist/index.d.ts +2 -2
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +6 -1
  5. package/dist/index.js.map +1 -1
  6. package/dist/internal/SteamAPICore.d.ts +221 -8
  7. package/dist/internal/SteamAPICore.d.ts.map +1 -1
  8. package/dist/internal/SteamAPICore.js +234 -14
  9. package/dist/internal/SteamAPICore.js.map +1 -1
  10. package/dist/internal/SteamAchievementManager.d.ts +602 -31
  11. package/dist/internal/SteamAchievementManager.d.ts.map +1 -1
  12. package/dist/internal/SteamAchievementManager.js +601 -32
  13. package/dist/internal/SteamAchievementManager.js.map +1 -1
  14. package/dist/internal/SteamCallbackPoller.d.ts +68 -0
  15. package/dist/internal/SteamCallbackPoller.d.ts.map +1 -0
  16. package/dist/internal/SteamCallbackPoller.js +134 -0
  17. package/dist/internal/SteamCallbackPoller.js.map +1 -0
  18. package/dist/internal/SteamLeaderboardManager.d.ts +338 -0
  19. package/dist/internal/SteamLeaderboardManager.d.ts.map +1 -0
  20. package/dist/internal/SteamLeaderboardManager.js +734 -0
  21. package/dist/internal/SteamLeaderboardManager.js.map +1 -0
  22. package/dist/internal/SteamLibraryLoader.d.ts +15 -0
  23. package/dist/internal/SteamLibraryLoader.d.ts.map +1 -1
  24. package/dist/internal/SteamLibraryLoader.js +42 -5
  25. package/dist/internal/SteamLibraryLoader.js.map +1 -1
  26. package/dist/internal/SteamStatsManager.d.ts +357 -50
  27. package/dist/internal/SteamStatsManager.d.ts.map +1 -1
  28. package/dist/internal/SteamStatsManager.js +444 -106
  29. package/dist/internal/SteamStatsManager.js.map +1 -1
  30. package/dist/steam.d.ts +169 -9
  31. package/dist/steam.d.ts.map +1 -1
  32. package/dist/steam.js +178 -0
  33. package/dist/steam.js.map +1 -1
  34. package/dist/types.d.ts +91 -0
  35. package/dist/types.d.ts.map +1 -1
  36. package/dist/types.js +34 -0
  37. package/dist/types.js.map +1 -1
  38. package/package.json +4 -3
@@ -37,18 +37,85 @@ exports.SteamAPICore = void 0;
37
37
  const fs = __importStar(require("fs"));
38
38
  const path = __importStar(require("path"));
39
39
  /**
40
- * Core Steam API initialization and lifecycle management
40
+ * SteamAPICore
41
+ *
42
+ * Core Steam API initialization and lifecycle management.
43
+ * Handles Steam client connection, interface management, and callback processing.
44
+ *
45
+ * This class manages the fundamental Steam API operations:
46
+ * - Initialization and shutdown of the Steam API
47
+ * - Interface retrieval (UserStats, User)
48
+ * - Status monitoring (Steam running, initialization state)
49
+ * - Callback processing for Steam events
50
+ *
51
+ * @example
52
+ * ```typescript
53
+ * const loader = new SteamLibraryLoader();
54
+ * const apiCore = new SteamAPICore(loader);
55
+ *
56
+ * const success = apiCore.init({ appId: 480 });
57
+ * if (success) {
58
+ * console.log('[Steamworks] Steam API initialized!');
59
+ * // Use Steam features...
60
+ * apiCore.shutdown();
61
+ * }
62
+ * ```
41
63
  */
42
64
  class SteamAPICore {
65
+ /**
66
+ * Creates a new SteamAPICore instance
67
+ *
68
+ * @param libraryLoader - The Steam library loader for FFI calls
69
+ */
43
70
  constructor(libraryLoader) {
71
+ /** Whether the Steam API has been successfully initialized */
44
72
  this.initialized = false;
73
+ /** The Steam App ID for this application */
45
74
  this.appId = 0;
75
+ /** Pointer to the ISteamUserStats interface */
46
76
  this.userStatsInterface = null;
77
+ /** Pointer to the ISteamUser interface */
47
78
  this.userInterface = null;
79
+ /** Pointer to the ISteamUtils interface */
80
+ this.utilsInterface = null;
48
81
  this.libraryLoader = libraryLoader;
49
82
  }
50
83
  /**
51
- * Initialize Steam API
84
+ * Initialize the Steam API
85
+ *
86
+ * Establishes connection to the Steam client and retrieves necessary interfaces.
87
+ * Creates steam_appid.txt file required by Steam, loads the Steamworks library,
88
+ * and initializes all necessary Steam interfaces.
89
+ *
90
+ * @param options - Initialization options containing the Steam App ID
91
+ * @returns true if initialization was successful, false otherwise
92
+ *
93
+ * @example
94
+ * ```typescript
95
+ * const success = apiCore.init({ appId: 480 });
96
+ * if (success) {
97
+ * console.log('[Steamworks] Connected to Steam for App ID:', 480);
98
+ * } else {
99
+ * console.error('[Steamworks] Failed to initialize Steam API');
100
+ * }
101
+ * ```
102
+ *
103
+ * @remarks
104
+ * - Creates steam_appid.txt file in the current working directory
105
+ * - Sets SteamAppId environment variable
106
+ * - Automatically requests current stats from Steam servers
107
+ * - Runs callbacks to process initial Steam events
108
+ *
109
+ * @warning
110
+ * Requires Steam client to be running and user to be logged in
111
+ *
112
+ * Steamworks SDK Functions:
113
+ * - `SteamAPI_Init()` - Initialize the Steam API
114
+ * - `SteamAPI_IsSteamRunning()` - Check if Steam client is running
115
+ * - `SteamAPI_SteamUserStats_v013()` - Get ISteamUserStats interface
116
+ * - `SteamAPI_SteamUser_v023()` - Get ISteamUser interface
117
+ * - `SteamAPI_ISteamUserStats_RequestCurrentStats()` - Request current stats from Steam
118
+ * - `SteamAPI_RunCallbacks()` - Process Steam callbacks
52
119
  */
53
120
  init(options) {
54
121
  try {
@@ -79,6 +146,11 @@ class SteamAPICore {
79
146
  }
80
147
  // Get User interface
81
148
  this.userInterface = this.libraryLoader.SteamAPI_SteamUser_v023();
149
+ // Get Utils interface
150
+ this.utilsInterface = this.libraryLoader.SteamAPI_SteamUtils_v010();
151
+ if (!this.utilsInterface || this.utilsInterface === null) {
152
+ console.warn('[Steamworks] WARNING: Failed to get SteamUtils interface');
153
+ }
82
154
  // Request current stats from Steam servers
83
155
  console.log('[Steamworks] Requesting current stats from Steam...');
84
156
  const statsRequested = this.libraryLoader.SteamAPI_ISteamUserStats_RequestCurrentStats(this.userStatsInterface, 0);
@@ -95,14 +167,33 @@ class SteamAPICore {
95
167
  catch (error) {
96
168
  console.error('[Steamworks] ERROR: Failed to initialize Steam API:', error.message);
97
169
  console.error('[Steamworks] Make sure:');
98
- console.error(' 1. Steam client is running and you\'re logged in');
99
- console.error(' 2. Steamworks redistributable binaries are available');
100
- console.error(' 3. App ID is valid and game is in your library');
170
+ console.error('[Steamworks] 1. Steam client is running and you\'re logged in');
171
+ console.error('[Steamworks] 2. Steamworks redistributable binaries are available');
172
+ console.error('[Steamworks] 3. App ID is valid and game is in your library');
101
173
  return false;
102
174
  }
103
175
  }
104
176
  /**
105
- * Shutdown Steam API
177
+ * Shutdown the Steam API
178
+ *
179
+ * Cleanly shuts down the Steam API connection and releases all interfaces.
180
+ * Should be called when the application is closing or Steam features are no longer needed.
181
+ *
182
+ * @example
183
+ * ```typescript
184
+ * process.on('SIGINT', () => {
185
+ * apiCore.shutdown();
186
+ * process.exit(0);
187
+ * });
188
+ * ```
189
+ *
190
+ * @remarks
191
+ * - Safe to call multiple times (only shuts down if initialized)
192
+ * - Clears all interface pointers
193
+ * - Sets initialized state to false
194
+ *
195
+ * Steamworks SDK Functions:
196
+ * - `SteamAPI_Shutdown()` - Shutdown the Steam API
106
197
  */
107
198
  shutdown() {
108
199
  if (this.libraryLoader.isLoaded() && this.initialized) {
@@ -111,11 +202,32 @@ class SteamAPICore {
111
202
  this.initialized = false;
112
203
  this.userStatsInterface = null;
113
204
  this.userInterface = null;
205
+ this.utilsInterface = null;
114
206
  console.log('[Steamworks] Steam API shutdown complete');
115
207
  }
116
208
  }
117
209
  /**
118
- * Get current Steam status
210
+ * Get the current Steam status
211
+ *
212
+ * Returns detailed status information including initialization state,
213
+ * App ID, and the current user's Steam ID.
214
+ *
215
+ * @returns Object containing initialization status, App ID, and Steam ID
216
+ *
217
+ * @example
218
+ * ```typescript
219
+ * const status = apiCore.getStatus();
220
+ * console.log(`[Steamworks] Initialized: ${status.initialized}`);
221
+ * console.log(`[Steamworks] App ID: ${status.appId}`);
222
+ * console.log(`[Steamworks] Steam ID: ${status.steamId}`);
223
+ * ```
224
+ *
225
+ * @remarks
226
+ * - Steam ID is '0' if not initialized or unable to retrieve
227
+ * - App ID is 0 if not initialized
228
+ *
229
+ * Steamworks SDK Functions:
230
+ * - `SteamAPI_ISteamUser_GetSteamID()` - Get current user's Steam ID
119
231
  */
120
232
  getStatus() {
121
233
  let steamId = '0';
@@ -125,7 +237,7 @@ class SteamAPICore {
125
237
  steamId = steamIdNum.toString();
126
238
  }
127
239
  catch (error) {
128
- console.warn('Failed to get Steam ID:', error.message);
240
+ console.warn('[Steamworks] Failed to get Steam ID:', error.message);
129
241
  }
130
242
  }
131
243
  return {
@@ -136,6 +248,25 @@ class SteamAPICore {
136
248
  }
137
249
  /**
138
250
  * Run Steam callbacks to process pending events
251
+ *
252
+ * Processes all pending Steam callbacks and events. Should be called regularly
253
+ * (e.g., in a game loop or timer) to ensure Steam events are processed promptly.
254
+ *
255
+ * @example
256
+ * ```typescript
257
+ * // In a game loop or setInterval
258
+ * setInterval(() => {
259
+ * apiCore.runCallbacks();
260
+ * }, 100); // Every 100ms
261
+ * ```
262
+ *
263
+ * @remarks
264
+ * - Safe to call even if not initialized (will be ignored)
265
+ * - Automatically called by init() and after stat/achievement operations
266
+ * - Required for receiving Steam events and callbacks
267
+ *
268
+ * Steamworks SDK Functions:
269
+ * - `SteamAPI_RunCallbacks()` - Process all pending Steam callbacks
139
270
  */
140
271
  runCallbacks() {
141
272
  if (this.initialized && this.libraryLoader.isLoaded()) {
@@ -143,12 +274,32 @@ class SteamAPICore {
143
274
  this.libraryLoader.SteamAPI_RunCallbacks();
144
275
  }
145
276
  catch (error) {
146
- console.warn('Warning: Error running Steam callbacks:', error.message);
277
+ console.warn('[Steamworks] Warning: Error running Steam callbacks:', error.message);
147
278
  }
148
279
  }
149
280
  }
150
281
  /**
151
- * Check if Steam client is running
282
+ * Check if the Steam client is running
283
+ *
284
+ * Verifies that the Steam client application is currently running on the user's system.
285
+ *
286
+ * @returns true if Steam is running, false otherwise
287
+ *
288
+ * @example
289
+ * ```typescript
290
+ * if (apiCore.isSteamRunning()) {
291
+ * console.log('[Steamworks] Steam client is active');
292
+ * } else {
293
+ * console.warn('[Steamworks] Steam client is not running');
294
+ * }
295
+ * ```
296
+ *
297
+ * @remarks
298
+ * - Returns false if Steam API is not initialized
299
+ * - Safe to call at any time
300
+ *
301
+ * Steamworks SDK Functions:
302
+ * - `SteamAPI_IsSteamRunning()` - Check if Steam client is running
152
303
  */
153
304
  isSteamRunning() {
154
305
  if (this.initialized && this.libraryLoader.isLoaded()) {
@@ -156,30 +307,99 @@ class SteamAPICore {
156
307
  return this.libraryLoader.SteamAPI_IsSteamRunning();
157
308
  }
158
309
  catch (error) {
159
- console.warn('Warning: Error checking if Steam is running:', error.message);
310
+ console.warn('[Steamworks] Warning: Error checking if Steam is running:', error.message);
160
311
  return false;
161
312
  }
162
313
  }
163
314
  return false;
164
315
  }
165
316
  /**
166
- * Check if initialized
317
+ * Check if the Steam API is initialized
318
+ *
319
+ * Returns the current initialization state of the Steam API.
320
+ *
321
+ * @returns true if initialized and ready to use, false otherwise
322
+ *
323
+ * @example
324
+ * ```typescript
325
+ * if (!apiCore.isInitialized()) {
326
+ * console.error('[Steamworks] Cannot perform Steam operations - not initialized');
327
+ * return;
328
+ * }
329
+ * ```
167
330
  */
168
331
  isInitialized() {
169
332
  return this.initialized;
170
333
  }
171
334
  /**
172
- * Get UserStats interface pointer
335
+ * Get the ISteamUserStats interface pointer
336
+ *
337
+ * Returns the native pointer to the ISteamUserStats interface, which is used
338
+ * for achievement and stats operations.
339
+ *
340
+ * @returns Pointer to ISteamUserStats interface, or null if not initialized
341
+ *
342
+ * @example
343
+ * ```typescript
344
+ * const userStats = apiCore.getUserStatsInterface();
345
+ * if (userStats) {
346
+ * // Use interface for stats/achievement operations
347
+ * }
348
+ * ```
349
+ *
350
+ * @remarks
351
+ * - Returns null if Steam API is not initialized
352
+ * - This is a native pointer for use with FFI calls
173
353
  */
174
354
  getUserStatsInterface() {
175
355
  return this.userStatsInterface;
176
356
  }
177
357
  /**
178
- * Get User interface pointer
358
+ * Get the ISteamUser interface pointer
359
+ *
360
+ * Returns the native pointer to the ISteamUser interface, which is used
361
+ * for user identity operations.
362
+ *
363
+ * @returns Pointer to ISteamUser interface, or null if not initialized
364
+ *
365
+ * @example
366
+ * ```typescript
367
+ * const user = apiCore.getUserInterface();
368
+ * if (user) {
369
+ * // Use interface for user operations
370
+ * }
371
+ * ```
372
+ *
373
+ * @remarks
374
+ * - Returns null if Steam API is not initialized
375
+ * - This is a native pointer for use with FFI calls
179
376
  */
180
377
  getUserInterface() {
181
378
  return this.userInterface;
182
379
  }
380
+ /**
381
+ * Get the ISteamUtils interface pointer
382
+ *
383
+ * Returns the native pointer to the ISteamUtils interface, which is used
384
+ * for utility operations including API call result checking.
385
+ *
386
+ * @returns Pointer to ISteamUtils interface, or null if not initialized
387
+ *
388
+ * @example
389
+ * ```typescript
390
+ * const utils = apiCore.getUtilsInterface();
391
+ * if (utils) {
392
+ * // Use interface for utility operations
393
+ * }
394
+ * ```
395
+ *
396
+ * @remarks
397
+ * - Returns null if Steam API is not initialized
398
+ * - This is a native pointer for use with FFI calls
399
+ */
400
+ getUtilsInterface() {
401
+ return this.utilsInterface;
402
+ }
183
403
  }
184
404
  exports.SteamAPICore = SteamAPICore;
185
405
  //# sourceMappingURL=SteamAPICore.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SteamAPICore.js","sourceRoot":"","sources":["../../src/internal/SteamAPICore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SteamAPICore.js","sourceRoot":"","sources":["../../src/internal/SteamAPICore.ts"],"names":[],"mappings":"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"}