Steamworks-dokumentaatio
ISteamApps-käyttöliittymä
Sisältää laajan valikoiman tietoa ja toimintoja sovelluksille ja lisämateriaaleille.

Jäsenfunktiot

ISteamApps-käyttöliittymän jäsenfunktioita kutsutaan globaalilla SteamApps()-aksessorifunktiolla.

BGetDLCDataByIndex

bool BGetDLCDataByIndex( int iDLC, AppId_t *pAppID, bool *pbAvailable, char *pchName, int cchNameBufferSize );
NimiTyyppiKuvaus
iDLCintLisämateriaalin indeksi saa arvon välillä 0 ja ISteamApps::GetDLCCount.
pAppIDAppId_t *Palauttaa lisämateriaalin sovellustunnuksen (AppID).
pbAvailablebool *Palauttaa tiedon, onko lisämateriaali tällä hetkellä saatavilla Steam-kaupassa. Tämä on false, jos lisämateriaalilla ei ole näkyvää kauppasivua.
pchNamechar *Palauttaa lisämateriaalin nimen kopioimalla sen puskuriin.
cchNameBufferSizeintPuskurin pchName pituus.

Palauttaa indeksistä lisämateriaalin metatiedot.

Paluuarvot: bool
true, jos nykyiseen sovellustunnukseen (AppID) liittyy lisämateriaali ja iDLC on välillä 0 ja ISteamApps::GetDLCCount. Muussa tapauksessa false.

Esimerkki
int32 DLCCount = SteamApps()->GetDLCCount(); for ( int i = 0; i < DLCCount; ++i ) { AppId_t appId; bool available; char name[128]; bool success = SteamApps()->BGetDLCDataByIndex( i, &appId, &available, name, 128 ); if ( success ) { //Tee jotain lisämateriaalin datalle. } }

BIsAppInstalled

bool BIsAppInstalled( AppId_t appID );
NimiTyyppiKuvaus
appIDAppId_tSovelluksen sovellustunnus (AppID) tarkistettavaksi

Tarkistaa, onko tietty sovellus asennettu.

Nykyinen käyttäjä ei välttämättä omista sovellusta. Se on saattanut jäädä hänelle ilmaisviikonloppulta tms.

Toimii ainoastaan perussovelluksissa muttei lisämateriaaleissa. Käytä lisämateriaalille sen sijaan ISteamApps::BIsDlcInstalled-jäsenfunktiota.

Paluuarvot: bool
true, jos määritetty sovellustunnus (AppID) on asennettu. Muussa tapauksessa false.

BIsCybercafe

bool BIsCybercafe();
Tarkistaa, onko nykyinen sovellustunnus (AppID) Steam PC Café -käytössä.

Paluuarvot: bool
true, jos lisenssi on Steam PC Café -käytössä. Muussa tapauksessa false.
Vanhentunut, ei enää käytössä.

BIsDlcInstalled

bool BIsAppInstalled( AppId_t appID );
NimiTyyppiKuvaus
appIDAppId_tTarkastettavan lisämateriaalin sovellustunnus (AppID).

Tarkistaa, onko käyttäjällä tietty lisämateriaali ja onko se asennettu.

Paluuarvot: bool
true, jos käyttäjä omistaa lisämateriaalin ja se on asennettu. Muussa tapauksessa false.

Huomaa! Vain yksinkertaisia asiakasohjelman tarkistuksia varten, ei pelinsisäisten esineiden myöntämiseen.

BIsLowViolence

bool BIsLowViolence();
Tarkistaa, onko käyttäjän lisenssissä vähäisen väkivallan depotteja.

Vähäisen väkivallan depotit sopivat pelikopioille, joita myydään maissa, joissa on rajoituksia sisällölle.

Paluuarvot: bool
true, jos käyttäjän omistamassa lisenssissä on alhaisen väkivallan depotti. Muussa tapauksessa false.

Katso myös: Depottien käyttöönotto

BIsSubscribed

bool BIsSubscribed();
Tarkistaa, onko aktiivinen käyttäjä tilannut nykyisen sovellustunnuksen (AppID).

Huom! Palauttaa aina arvon true, jos käytetään Steamin DRM:ää tai kutsutaan SteamAPI_RestartAppIfNecessary.

Paluuarvot: bool
true, jos käyttäjä omistaa nykyisen sovellustunnuksen (AppID). Muussa tapauksessa false.

BIsSubscribedApp

bool BIsSubscribedApp( AppId_t appID );
NimiTyyppiKuvaus
appIDapitype]steam_api::AppId_t[/apitype]Tarkistettava sovellustunnus (AppID).

Tarkistaa, onko aktiivinen käyttäjä tilannut tietyn sovellustunnuksen.

Käytä ainoastaan, jos sinun pitää tarkistaa toisen, peliisi liittyvän sovelluksen (esimerkiksi demon) omistajuus.

Paluuarvot: bool
true, jos käyttäjä on tilannut erityisen sovellustunnuksen (AppID). Muussa tapauksessa false.

BIsSubscribedFromFamilySharing

bool BIsSubscribedFromFamilySharing();

Tarkistaa, käyttääkö aktiivinen henkilö nykyistä sovellustunnusta jonkun toisen käyttäjän väliaikaisella Lainaamo-lisenssillä.

Jos sinun on määriteltävä lisenssin vakituisen omistajan SteamID, käytä GetAppOwner.

Paluuarvot: bool
true, jos henkilö käyttää nykyistä sovellustunnusta (AppID) Lainaamon kautta. Muussa tapauksessa false.

BIsSubscribedFromFreeWeekend

bool BIsSubscribedFromFreeWeekend();

Tarkistaa, onko aktiivinen käyttäjä tilannut nykyisen sovellustunnuksen (AppID) ilmaisviikonloppuna.

Ota yhteyttä Valven tekniseen yhteyspäällikköön Steamworks-keskustelupalstalla ennen käyttöä, jotta sinulla on oikea paketti ja ilmaisviikonloppu varattu.

Paluuarvot: bool
true, jos aktiiinen käyttäjä on kirjautunut nykyiseen sovellustunnukseen (AppID) ilmaisen viikonlopun kautta. Muiden lisenssityyppien tapauksessa false.

BIsTimedTrial

bool BIsTimedTrial(uint32* punSecondsAllowed, uint32* punSecondsPlayed);
NimiTyyppiKuvaus
punSecondsAlloweduint32 *Palauttaa ajastetun kokeilun sekuntien määrän.
punSecondsPlayeduint32 *Palauttaa ajastetun kokeilun tähän asti pelattujen sekuntien määrän.

Tarkistaa, onko aktiivinen käyttäjä tilannut nykyisen sovellustunnuksen (AppID) ajastetun kokeilun kautta. Jos käyttäjä on tilannut sen nykyisellä sovellustunnuksella, paluuarvo on true ja pelaamisen kokonaisajan sekä pelaajan nykyisen peliajan.

Paluuarvot: bool
true, jos aktiivinen käyttäjä on kirjautunut nykyiseen sovellustunnukseen (AppID) ajastetun kokeilun kautta. Muiden lisenssityyppien tapauksessa false.

Katso myös: ISteamApps::TimedTrialStatus_t

BIsVACBanned

bool BIsVACBanned();
Tarkistaa, onko käyttäjän tilillä VAC-kielto.

Paluuarvot: bool
true, jos käyttäjän tilillä on VAC-kielto. Muussa tapauksessa false.

GetAppBuildId

int GetAppBuildId();
Hakee sovelluksen koontiversiotunnuksen (BuildID), joka voi vaihtua milloin tahansa palvelimen päivitysten myötä.

Paluuarvot: int
Sovelluksen tämänhetkinen koontiversiotunnus (BuildID). Jos sinulla ei ole käytössä Steamistä ladattua koontiversiota, oletuksena on 0.

GetAppInstallDir

uint32 GetAppInstallDir( AppId_t appID, char *pchFolder, uint32 cchFolderBufferSize );
NimiTyyppiKuvaus
appIDAppId_tSovellustunnus (AppID), joka hakee asennushakemiston.
pchFolderchar *Merkkijonopuskuri, johon kansiopolku kopioidaan.
cchFolderBufferSizeuint32Puskurin pchFolder koko tavuissa.

Noutaa tietyn sovellustunnuksen (AppID) asennuskansion.

Toimii vaikka sovellusta ei ole asennettu, sen perusteella, mikä pelin asennuksen Steam-kirjaston oletusasennussijainti on.

Paluuarvot: uint32
Palauttaa asennushakemistopolun merkkijonona pchFolder-kansiossa toimitettuun puskuriin ja puskuriin kopioitujen tavujen lukumäärän.

GetAppOwner

CSteamID GetAppOwner();
Hakee nykyisen sovelluksen oikean omistajan Steam-tunnuksen. Arvo eroaa nykyisestä käyttäjästä, jos sovellus on käytössä Steamin perhekirjaston kautta.

Paluuarvot: CSteamID
Nykyisen sovelluksen alkuperäinen omistaja.

GetAvailableGameLanguages

const char * GetAvailableGameLanguages();
Noutaa pilkuilla erotellun listan kielistä, joita nykyinen sovellus tukee.

Katso täydellinen lista mahdollisesti palautettavista kielistä täältä: Lokalisointi ja kielet.

Paluuarvot: const char *
Palauttaa pilkuilla erotellun listan kielistä.

Katso myös: ISteamApps::GetCurrentGameLanguage, ISteamUtils::GetSteamUILanguage

GetCurrentBetaName

bool GetCurrentBetaName( char *pchName, int cchNameBufferSize );
NimiTyyppiKuvaus
pchNamechar *Puskuri, jonne betanimi kopioidaan.
cchNameBufferSizeintPuskurin pchName koko yhteensä.

Tarkistaa, onko henkilöllä betahaara käytössä ja hakee nimen, jos on.

Paluuarvot: bool
true, jos käyttäjä on betahaarassa. Muussa tapauksessa false.

GetNumBetas

int GetNumBetas( int *pnAvailable, int *pnPrivate );
NimiTyyppiKuvaus
pnAvailableint*Nykyisen käyttäjän saatavilla olevien betahaarojen määrä.
pnPrivate int*Yksityisten betahaarojen määrä.

Palauttaa tunnettujen sovellushaarojen kokonaismäärän (mukaan lukien ns. julkinen oletushaara), joka voidaan iteroida getBetaInfo()-kutsulla.

Paluuarvot: int
Tunnettujen sovellushaarojen määrä

GetBetaInfo

bool GetBetaInfo( int iBetaIndex, uint32 *punFlags, uint32 *punBuildID, char *pchBetaName, int cchBetaName, char *pchDescription, int cchDescription );
NimiTyyppiKuvaus
iBetaIndexintBranch index starting at 0 which is always the default branch.
punFlagsuint32 *Nykyistä haaran tilaa kuvaava lippujen (EBetaBranchFlags) joukko.
punBuildIDuint32 *Haarassa livenä näkyvän sisällön koontiversiotunnus.
pchBetaNamechar *Betahaaran nimi.
cchBetaNameintKutsujan ilmoittama pchBetaNamen koko.
pchDescriptionchar *Betahaaran kuvaus.
cchDescriptionintKutsujan ilmoittaman pchDescription-parametrin koko.

Hakee sovelluksen betahaarasta tietoja, kuten nimen, kuvauksen ja tilan.

Paluuarvot: bool
Jos haaran indeksiarvo on kelvollinen, true (tosi). Muussa tapauksessa false (epätosi).

Esimerkki:
int32 betaCount = SteamApps()->GetNumBetas( nullptr, nullptr ); for ( int betaIndex = 0; betaIndex < betaCount; ++betaIndex ) { char name[128]; char description[1024]; uint32 flags = 0; // EBetaBranchFlags uint32 buildID = 0; SteamApps()->GetBetaInfo( betaIndex, &flags, &buildID, name, sizeof( name ), description, sizeof( description ) ); }

SetActiveBeta

bool SetActiveBeta( const char *pchBetaName );
NimiTyyppiKuvaus
pchBetaName const char *Betan nimi, johon peli haluaa vaihtaa.

Valitse sovellusta varten käytettävä betahaara. Peli pitää ehkä käynnistää uudelleen, jotta Steam voi päivittää haaran sisällön.

Paluuarvot: bool

GetCurrentGameLanguage

const char * GetCurrentGameLanguage();
Hakee nykyisen, käyttäjän määrittämän kielen.

Käyttää Steam-käyttöjärjestelmän kieltä, jos käyttäjä ei ole erikseen valinnut kieltä pelille.

Täyden listan tuetuista kielistä löydät täältä: Tuetut kielet.

Paluuarvot: const char *


Katso myös: ISteamApps::GetAvailableGameLanguages, ISteamUtils::GetSteamUILanguage

GetDLCCount

int GetDLCCount();
Noutaa nykyisen sovelluksen lisämateriaalin osien lukumäärän.

Käytetään lisämateriaalin osioiden läpikäymiseen ja niiden tietojen hakemiseen ISteamApps::BGetDLCDataByIndex-jäsenfunktiolla.

Paluuarvot: int
Nykyisen sovelluksen lisämateriaalien määrä. Määrä voi olla enimmillään 64. Tämä riippuu lisämateriaalien määrästä, joita käyttäjä ei omista. Jos sovelluksella on useita lisämateriaaleja, kannattaa määrittää oma sisäinen lisämateriaalilista, jota vasten niitä tarkistetaan.

Esimerkki
int32 DLCCount = SteamApps()->GetDLCCount(); for ( int i = 0; i < DLCCount; ++i ) { AppId_t appId; bool available; char name[128]; bool success = SteamApps()->BGetDLCDataByIndex( i, &appId, &available, name, 128 ); if ( success ) { //Tee jotain lisämateriaalin datalle. } }

GetDlcDownloadProgress

bool GetDlcDownloadProgress( AppId_t nAppID, uint64 *punBytesDownloaded, uint64 *punBytesTotal );
NimiTyyppiKuvaus
nAppIDAppId_tSeurattavan lisämateriaalin sovellustunnus (AppID).
punBytesDownloadeduint64 *Palauttaa ladattujen tavujen lukumäärän.
punBytesTotaluint64 *Palauttaa latauksen kokonaiskoon tavuina.

Noutaa latauksen edistymisen vaihtoehtoiselle lisämateriaalille.

Paluuarvot: bool
true, jos määritetty lisämateriaali on olemassa ja parhaillaan latauksessa. Muussa tapauksessa false.

GetEarliestPurchaseUnixTime

uint32 GetEarliestPurchaseUnixTime( AppId_t nAppID );
NimiTyyppiKuvaus
nAppIDAppId_tSovellustunnus (AppID), jonka ostoajankohta haetaan.

Hakee tietyn sovelluksen ostoajan, joka ilmoitetaan Unix-ajassa (1.1.1970 lähtien).

Tämä on hyödyllinen, kun halutaan palkita käyttäjiä alkuperäisen ostopäivän perusteella.

Paluuarvot: uint32
Varhaisin ostoajankohta Unix-aikana (sekunneissa 1.1.1970 lähtien).

GetFileDetails

SteamAPICall_t GetFileDetails( const char*pszFileName );
NimiTyyppiKuvaus
pszFileNameconst char*Tiedoston absoluuttinen polku ja nimi.

Noutaa tiedoston metatiedot depotin luettelotiedostosta asynkronisesti.

Toimittaa tällä hetkellä:
tiedostokoon tavuina
tiedoston SHA1-hajautusalgoritmin ja
tiedoston merkinnät.

Paluuarvot: SteamAPICall_t, jota käytetään FileDetailsResult_t-takaisinkutsun tuloksena.

GetInstalledDepots

uint32 GetInstalledDepots( AppId_t appID, DepotId_t *pvecDepots, uint32 cMaxDepots );
NimiTyyppiKuvaus
appIDAppId_tSovellus, jonka depotit listataan.
pvecDepotsDepotId_t *Ennalta allokoitu taulukko, joka täytetään depottilistalla.
cMaxDepotsuint32Hankittavien depottien enimmäismäärä, tyypillisesti koko on sama kuin pvecDepots.

Noutaa sovellustunnukselle (AppID) käyttöönottojärjestyksessä kaikkien asennettujen depottien listan.

Paluuarvot: uint32
Palautettujen depottien lukumäärä.

GetLaunchCommandLine

int GetLaunchCommandLine( char *pszCommandLine, int cubCommandLine );
NimiTyyppiKuvaus
pszCommandLinechar *Merkkijonopuskuri, johon komentorivi kopioidaan.
cubCommandLine intPuskurin pszCommandLine koko tavuissa.

Noutaa komentorivin, jos peli käynnistettiin Steamin URL-osoitteesta, esimerkiksi steam://run/<appid>//<command line>/. Metodia suositellaan käyttöjärjestelmän kautta tapahtuvan komentorivillä käynnistämisen sijaan, koska jälkimmäinen voi aiheuttaa turvallisuusriskin. Jotta tilapäivitys menee tämän kautta, eikä sitä laiteta käyttöliittymän komentoriville, sinun pitää ottaa Käytä käynnistyksen komentoriviä -valinta käyttöön sovelluksestasi kohdasta Asennus > Yleissivu.

Paluuarvot: int
Palauttaa komentorivin merkkijonona puskuriin, jonka on välittänyt pszCommandLine-parametri, ja palauttaa puskuriin kopioitujen tavujen lukumäärän.

Katso myös: ISteamApps::NewUrlLaunchParameters_t

GetLaunchQueryParam

const char * GetLaunchQueryParam( const char *pchKey );
NimiTyyppiKuvaus
pchKeyconst char *Testattava julkaisutunnus. Esim. param1.

Noutaa käynnistysparametrin, jos peli on käynissä Steamissä: //run/<appid>/?param1=value1;param2=value2;param3=value3 jne.

@-merkillä alkavat parametrit on varattu sisäiseen käyttöön ja palauttavat aina tyhjän merkkijonon.
_-alaviivalla alkavat muuttujat on varattu Steam-toimintoja varten. Niitä voi kysellä pelin nimellä, mutta alaviivalla alkavia param-nimiä ei kannata käyttää omia toimintoja varten.

Paluuarvot const char *
Toimitettuun tunnukseen liittyvä arvo. Jos määritettyä tunnusta ei ole, palautetaan tyhjä merkkijono ("").

Katso myös: ISteamApps::NewLaunchQueryParameters_t

InstallDLC

void InstallDLC( AppId_t nAppID );
NimiTyyppiKuvaus
nAppIDAppId_tLisämateriaali, jonka haluat asentaa.

Sallii vaihtoehtoisen lisämateriaalin asennuksen.

Paluuarvot void

Lähettää DlcInstalled_t -takaisinkutsun.

MarkContentCorrupt

bool MarkContentCorrupt( bool bMissingFilesOnly );
NimiTyyppiKuvaus
bMissingFilesOnlyboolSkannaa vain puuttuvia tiedostoja, ei vahvista jokaisen tiedoston tarkistussummia.

Pakottaa pelisisällön varmistuksen seuraavan käynnistämisen yhteydessä.

Tilanteissa, joissa peliversio on vanhentunut (jos esimerkiksi asiakasohjelma tunnistaa yhteensopivuusongelman version ja palvelimen välillä)
voit käyttää pyyntöä MarkContentCorrupt pakottaaksesi vahvistuksen, näyttää viestin käyttäjälle ja sulkea ohjelman.

Paluuarvot bool

RequestAllProofOfPurchaseKeys

void RequestAllProofOfPurchaseKeys();
Vanhentunut.

RequestAppProofOfPurchaseKey

void RequestAppProofOfPurchaseKey( AppId_t nAppID );
NimiTyyppiKuvaus
nAppIDAppId_t

Vanhentunut.

UninstallDLC

void UninstallDLC( AppId_t nAppID );
NimiTyyppiKuvaus
nAppIDAppId_tLisämateriaali, jonka haluat poistaa.

Sallii valinnaisen lisämateriaalin asennuksen poistamisen.

Takaisinkutsut

Nämä ovat takaisinkutsuja, jotka käynnistetään pyynnöllä SteamAPI_RunCallbacks. Useat näistä aktivoituvat ISteamApps-jäsenfunktioiden seurauksena.

AppProofOfPurchaseKeyResponse_t

Käytetään ainoastaan sisäisesti Steamissä.

NimiTyyppiKuvaus
m_eResultEResult
m_nAppIDuint32
m_cchKeyLengthuint32
m_rgchKeychar[k_cubAppProofOfPurchaseKeyMax

DlcInstalled_t

Käynnistyy, kun nykyinen käyttäjä on ostanut ja asentanut lisämateriaalin.

NimiTyyppiKuvaus
m_nAppIDAppId_tAsennetun lisämateriaalin sovellustunnus (AppID).

Liittyvät funktiot: ISteamApps::InstallDLC

FileDetailsResult_t

Aktivoituu tietyn tiedoston tietojen pyytämisen jälkeen.

NimiTyyppiKuvaus
m_eResultEResultOnnistuiko kutsu? Jos onnistui, tulos on k_EResultOK. Muussa tapauksessa tulos on k_EResultFileNotFound, jos tiedostoa ei löydy. Jos kutsu epäonnistui, muita kenttiä ei täytetä.
m_ulFileSizeuint64Alkuperäisen tiedoston koko tavuissa.
m_FileSHAuint8[20]Alkuperäisen tiedoston SHA1-hajautusalgoritmi.
m_unFlagsuint32

Liittyvät funktiot: ISteamApps::GetFileDetails

NewUrlLaunchParameters_t

Lähetetään sen jälkeen, kun käyttäjä on pelin aikana suorittanut Steam URL:n komentorivillä tai kyselyn parametreillä (esim. steam://run/<appid>//?param1=value1;param2=value2;param3=value3;). Uusia parametrejä voi kysellä ISteamApps::GetLaunchCommandLine- ja ISteamApps::GetLaunchQueryParam-jäsenfunktioilla.

Takaisinkutsussa ei ole kenttiä.

NewLaunchQueryParameters_t

Lähetetään sen jälkeen, kun käyttäjä on pelin aikana suorittanut Steam URL:n parametreillä (esim. steam://run/<appid>//?param1=value1;param2=value2;param3=value3;). Uusia parametrejä voi kysellä ISteamApps::GetLaunchQueryParam-jäsenfunktiolla.

Takaisinkutsussa ei ole kenttiä.

RegisterActivationCodeResponse_t

Käytetään ainoastaan sisäisesti Steamissä.

NimiTyyppiKuvaus
m_eResultERegisterActivationCodeResult
m_unPackageRegistereduint32

TimedTrialStatus_t

Lähetetään joka minuutti, kun sovellustunnus on omistettu ajastetun kokeilun aikana.

NimiTyyppiKuvaus
m_unAppIDAppId_tAjastetun kokeilun sovellustunnus (AppID).
m_bIsOfflineboolJos true, käyttäjä on parhaillaan offline-tilassa. Sallittu/pelattu aika viittaa offline-aikaan, ei kokonaisaikaan.
m_unSecondsAlloweduint32Kuinka monta sekuntia sovellusta voi pelata yhteensä.
m_unSecondsPlayeduint32Kuinka monta sekuntia sovellusta on jo pelattu.

Katso myös: ISteamApps::BIsTimedTrial

Luetellut tyypit

Nämä ovat lueteltuja tyyppejä, jotka on määritetty käytettäviksi ISteamApps-käyttöliittymässä.

ERegisterActivationCodeResult

Käytetään ainoastaan sisäisesti Steamissä.

NimiArvoKuvaus
k_ERegisterActivationCodeResultOK0
k_ERegisterActivationCodeResultFail1
k_ERegisterActivationCodeResultAlreadyRegistered2
k_ERegisterActivationCodeResultTimeout3
k_ERegisterActivationCodeAlreadyOwned4

Vakiot

Nämä vakiot on määritetty käytettäviksi ISteamApps-käyttöliittymässä.

NimiTyyppiArvoKuvaus
k_cubAppProofOfPurchaseKeyMaxint240Käytetään ainoastaan sisäisesti Steamissä.
STEAMAPPS_INTERFACE_VERSIONconst char *"STEAMAPPS_INTERFACE_VERSION008"
  翻译: