Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Clarification request for dedicated servers using AllocateMessage (steamworks sdk version)

Aperta
#386 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
cpp
Ambito
networking

Direzione di ricerca

Inizia confrontando ISteamNetworkingUtils_AllocateMessage con i percorsi di inizializzazione SteamAPI_Init e SteamInternal_GameServer_Init_V2 nello Steamworks SDK, utilizzando il comportamento di Linux libsteam_api.so descritto qui. Controlla la documentazione di Steam Game Servers e la relativa issue di Facepunch.Steamworks; il lavoro è terminato quando sarà chiarito se il percorso gameserver supporta questa interfaccia e l’utilizzo supportato sarà documentato o corretto.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

steamworks

Hello, thank you for the work on this product :)

I'm revising a dedicated server program, build using the steamworks sdk version of GameNetworkingSockets.
I believe there to be the following inconsistency with the API or documentation:

  • ISteamNetworkingUtils_AllocateMessage is required to create a message in which you can set the outbound lane. The m_idxLane must be written into the structure.

  • Steamworks SDK comes with two init methods, SteamAPI_Init and, SteamInternal_GameServer_Init_V2
    Since it is a dedicated server, we use the last one.

  • The gameserver variant does not initialize the ISteamNetworkingUtils interface required to use the first mentioned function, despite SteamGameServer_InitEx ensuring it has the correct version of the interface present in the installed version of steam.

The code will build and run just fine, however, it makes an error message when accessing the interface
[S_API FAIL] Tried to access Steam interface SteamNetworkingUtils004 before SteamAPI_Init succeeded.
This is using the linux libsteam_api.so

There is only one function to access ISteamNetworkingUtils, which is the client version. Since for every other interface needed to build a dedicated server, they have a corresponding SteamGameServer_ prefixed interface function. Indeed, the steamworks documentation (https://partner.steamgames.com/doc/sdk/api : Steam Game Servers), does not mention a gameserver version of ISteamNetworkingUtils becoming available.

I do not know if this is causing internal errors in the steamworks_api, even though it seems to run fine.
SteamAPI_Init makes the message go away, but checks for a running steam desktop client, so I won't use it in the server program.

The same thing was also noticed here, which I assume the root cause is the same:
https://github.com/Facepunch/Facepunch.Steamworks/issues/630

Lingua principale
C++
Stelle
10k
Fork
747
Merge medio
5g 19h
PR unite (30g)
1

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di ValveSoftware/GameNetworkingSockets

Tutte le issue di ValveSoftware/GameNetworkingSockets

Issue simili

Altre issue su C++

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.