Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Missing dlc ids for ck3 #1

Open
wants to merge 99 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
99 commits
Select commit Hold shift + click to select a range
241e31f
Merge pull request #3 from clamor-s/master
Rosentti Apr 28, 2022
0f945ab
builds?
Rosentti Apr 29, 2022
91dc191
Update README.md
Rosentti Apr 29, 2022
87b59bc
Fix clone without SSH keys
Rosentti Apr 30, 2022
3dbb90a
Test github actions
Rosentti Apr 30, 2022
52c5193
github workflows: try 2
Rosentti Apr 30, 2022
9c1e546
update build and usage instructions
Rosentti Apr 30, 2022
8b1c371
clone submodules on gh actions
Rosentti Apr 30, 2022
3a25a56
minor refactoring
Rosentti Apr 30, 2022
7482706
fix start.sh
Rosentti Apr 30, 2022
43aa215
CI artifacts
Rosentti Apr 30, 2022
292a732
auto-create-release test
Rosentti Apr 30, 2022
9e63675
publish only if pr
Rosentti May 1, 2022
64eb4f8
manual release only
Rosentti May 1, 2022
d555a01
any branch or pr checks
Rosentti May 1, 2022
816b749
add name to zip action
Rosentti May 1, 2022
2959250
Update README.md
Rosentti Jun 3, 2022
a37bade
add GWYF, untested
Rosentti Jun 21, 2022
9d9406c
GWYF didn't work
Rosentti Jun 21, 2022
36fe74e
improve support, refactor steamworks sdk, payday2
Rosentti Jun 29, 2022
0fb5b34
Update README.md
Rosentti Jun 29, 2022
2f77c73
Add HOI4 No Step Back DLC
kernitus Aug 4, 2022
a0b7537
Merge pull request #8 from kernitus/master
Rosentti Aug 4, 2022
224f923
fix hoi4
Rosentti Aug 5, 2022
498644a
debugger support, fix direct launch
Rosentti Aug 5, 2022
9243119
fix wrong log output
Rosentti Aug 5, 2022
579e910
cream_api: add new stellaris entries
clamor-s Sep 28, 2022
5c6bc0f
Merge pull request #11 from clamor-s/patch-1
Rosentti Sep 28, 2022
bbc15d6
Add blood alone dlc
RitariME Sep 30, 2022
f9f837a
Merge pull request #12 from RitariME/patch-1
Rosentti Sep 30, 2022
d16448f
Update cream.sh
Rosentti Nov 1, 2022
5a5bee4
Update README.md
Rosentti Nov 1, 2022
966a030
add notice about unity games
Rosentti Nov 1, 2022
16f0a99
fixed paradox launcher, removed zenity gui
Rosentti Nov 20, 2022
88e6f24
Update README.md
Rosentti Nov 20, 2022
ade5fb1
fix gh actions
Rosentti Nov 20, 2022
1b7372e
actions: gcc-multilib
Rosentti Nov 20, 2022
a22798a
actions: also install g++-multilib
Rosentti Nov 20, 2022
db5d8db
actions: fix output path
Rosentti Nov 20, 2022
d975129
add missing dlcs
Nov 21, 2022
9dfb959
Merge pull request #16 from Tarballwalf/master
Rosentti Nov 21, 2022
dbfac88
add todo
Rosentti Dec 1, 2022
209cca5
Update README.md
Rosentti Dec 1, 2022
58bc015
dlsym hooking, remove dead code, fix payday2
Rosentti Dec 6, 2022
8b31204
golf with your friends
Rosentti Dec 6, 2022
3eb3dff
readme updates
Rosentti Dec 6, 2022
b5d25f0
removed broken test app
Rosentti Dec 6, 2022
7d82647
readme: add build dependencies
Rosentti Dec 17, 2022
e80f264
Added DLC for a lot of Paradox games
ParisAbyssus Jan 30, 2023
7efea25
fix up ordering
Rosentti Feb 3, 2023
1872bba
Merge pull request #17 from pipoliviero/master
Rosentti Feb 7, 2023
bf64050
Update README.md
Rosentti Apr 2, 2023
556471a
Update README.md
anticitizn Apr 3, 2023
81cee9f
Update README.md
anticitizn Apr 3, 2023
72029d5
Update README.md
anticitizn Apr 3, 2023
0aff474
Add Stellaris First Contact DLC
anticitizn Apr 3, 2023
553dc24
Add docker container config files
anticitizn Apr 3, 2023
67a7703
Update README.md
anticitizn Apr 3, 2023
26eae1e
Update readme
anticitizn Apr 3, 2023
ddc9e24
Update readme
anticitizn Apr 3, 2023
f2e7fdd
Update readme with troubleshooting section
anticitizn Apr 5, 2023
c17cc6c
Update README.md
anticitizn Apr 5, 2023
b6d85ce
Add all Crusader Kings II DLC's
rednatnas Apr 6, 2023
3aa2148
Merge branch 'anticitizn:master' into master
rednatnas Apr 6, 2023
bc302b1
Merge pull request #5 from rednatnas/master
anticitizn Apr 7, 2023
8433769
Add CK2 to list of tested games
anticitizn Apr 7, 2023
812a778
Added eu4 dlcs
joakimgaming Apr 13, 2023
85e0cac
Merge pull request #6 from joakimgaming/master
anticitizn Apr 13, 2023
41fd31c
Add EU4 to list of tested games
anticitizn Apr 13, 2023
4bd17b8
Disable automatic build & release
anticitizn Apr 13, 2023
81895ec
Add Stellaris: Galactic Paragons
anticitizn May 11, 2023
9264af0
Update readme
anticitizn May 17, 2023
367abb2
Update script to automatically find libsteam_api.so
anticitizn Jun 5, 2023
d115384
Update README.md
anticitizn Jun 5, 2023
032587b
Add CK3 to list of tested games
anticitizn Jun 7, 2023
b7ce15d
Added EU4 domination dlc and some other missing EU4 dlcs
joakimgaming Oct 13, 2023
34234f7
Merge pull request #14 from joakimgaming/master
anticitizn Oct 14, 2023
d016cd7
Fix for CK3/other games with similar directory structure
T00fy Jan 12, 2024
01f12ce
Merge pull request #17 from T00fy/master
anticitizn Jan 14, 2024
ab3e598
Add DLC Hearts of Iron IV: Arms Against Tyranny
valokardin Feb 5, 2024
cdd8130
Merge pull request #22 from valokardin/patch-1
anticitizn Feb 6, 2024
d2ba2d6
Added Stellaris astral planes
Feb 8, 2024
86ce4d5
Merge pull request #23 from MickTheRus/master
anticitizn Feb 19, 2024
1ccbc33
added eu4 king of kings dlc in cream_api.ini
Methoko Mar 16, 2024
1a02129
Merge pull request #26 from Methoko/patch-1
anticitizn Mar 21, 2024
bff5340
Update cream_api.ini
Conron4 Mar 21, 2024
46f39c9
Merge pull request #28 from Conron4/master
anticitizn Mar 25, 2024
e1ccae7
Update README.md
anticitizn Mar 25, 2024
faeed2b
Update issue templates
anticitizn Mar 25, 2024
51ed267
Update README.md
anticitizn Mar 25, 2024
c4a3195
the machine age and rick-the-cube dlcs
virtualphoton May 7, 2024
fbc2fd0
Merge pull request #33 from virtualphoton/stellaris_season-08
anticitizn Jun 9, 2024
7778ef8
Add creamlinux-installer to README
anticitizn Jun 9, 2024
c28e746
Update README.md
anticitizn Jun 12, 2024
21f7ce4
Update README.md
anticitizn Jun 13, 2024
467d642
Add proton/wine incompatibility to readme
anticitizn Jul 6, 2024
1270d42
Add new Europa Universalis IV "Winds of Change" DLC to cream_api
myszsoda Jul 14, 2024
eb666ee
Merge pull request #38 from myszsoda/master
anticitizn Jul 14, 2024
68092c5
Update cream_api.ini
bombasticman Sep 11, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions .github/ISSUE_TEMPLATE/game-not-working.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
---
name: Game not working
about: Report a game not working with creamlinux
title: GAME NAME not working
labels: bug
assignees: anticitizn

---

**Game Name**:


**Issue**:
- [ ] Game does not launch
- [ ] Game launches but DLCs are not enabled

**Logs**:
Please provide the complete logs according to instructions in the [readme](https://github.com/anticitizn/creamlinux/blob/master/README.md):


**Game Directory*:
Please provide an overview of your game directory using `ls -lh; ls -lh */`:


**Additional Information**:
82 changes: 82 additions & 0 deletions .github/workflows/cmake.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
name: CMake

on:
workflow_dispatch:
inputs:
relName:
description: 'Release Name'
required: true
default: 'Release v1.0.0'
tagName:
description: 'Release tag'
required: true
default: ""

env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: Release

jobs:
build:
# The CMake configure and build commands are platform agnostic and should work equally well on Windows or Mac.
# You can convert this to a matrix build if you need cross-platform coverage.
# See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- name: Init and update submodules
run: |
git submodule init
git submodule update
- name: Install gcc-multilib, g++-multilib
run: sudo apt-get install -y gcc-multilib g++-multilib

- name: Build
# Build your program with the given configuration
run: |
chmod +x ./build.sh
./build.sh
shell: bash

- name: Create artifacts
uses: actions/upload-artifact@v3
with:
name: linux-artifacts
path: |
${{github.workspace}}/output
- name: Create Release
id: create_release
if: ${{ github.event_name == 'workflow_dispatch'}}
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token
with:
tag_name: ${{ github.event.inputs.tagName }}
release_name: ${{ github.event.inputs.relName }}
body: ""
draft: false
prerelease: false
- name: Create zip of compile outputs
uses: papeloto/action-zip@v1
if: ${{ github.event_name == 'workflow_dispatch'}}
with:
files: output
dest: creamlinux.zip
- name: Upload Release Assets
if: ${{ github.event_name == 'workflow_dispatch'}}
id: upload-release-asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps
asset_path: ./creamlinux.zip
asset_name: creamlinux.zip
asset_content_type: application/zip
- name: Test
working-directory: ${{github.workspace}}/build
# Execute tests defined by the CMake configuration.
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
run: ctest -C ${{env.BUILD_TYPE}}

3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,6 @@ build/
.cache
.vscode
lib/
output
.idea
cmake-build-debug/
Empty file added .gitmodules
Empty file.
26 changes: 19 additions & 7 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,25 +2,37 @@
CMAKE_MINIMUM_REQUIRED(VERSION 3.9)

PROJECT(Creamlinux)
SET(CMAKE_CXX_STANDARD 17) # no explicit compiler flags if possible
SET(CMAKE_CXX_STANDARD 14) # no explicit compiler flags if possible
SET(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
SET(CMAKE_BUILD_TYPE Debug)
SET (DEBUG true)

link_directories(${CMAKE_SOURCE_DIR}/lib)

INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR})

ADD_LIBRARY(Creamlinux SHARED
${CMAKE_SOURCE_DIR}/main.cpp
${CMAKE_SOURCE_DIR}/steam
# ${CMAKE_SOURCE_DIR}/ext/steam
# ${CMAKE_SOURCE_DIR}/Creamlinux_steamapps.cpp
)
message("CMAKE_SIZEOF_VOID_P is ${CMAKE_SIZEOF_VOID_P}")
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
# 64 bits
set(CMAKE_SHARED_LIBRARY_PREFIX "lib64")
elseif(CMAKE_SIZEOF_VOID_P EQUAL 4)
# 32 bits
set(CMAKE_SHARED_LIBRARY_PREFIX "lib32")
endif()

add_custom_command(
TARGET Creamlinux POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_directory
${CMAKE_SOURCE_DIR}/package/
${CMAKE_CURRENT_BINARY_DIR}/lib/)


# If you want to build the testapp, you'll need to find libsteam_api and copy it to lib/libsteam_api.so
ADD_EXECUTABLE(Testapp ${CMAKE_SOURCE_DIR}/test.cpp)
TARGET_LINK_LIBRARIES(Testapp libsteam_api.so)
#TARGET_LINK_LIBRARIES(${CREAMLINUX_NAME} )
#ADD_EXECUTABLE(Testapp ${CMAKE_SOURCE_DIR}/test.cpp)
#TARGET_LINK_LIBRARIES(Testapp libsteam_api.so)
10 changes: 10 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
FROM ubuntu:20.04

ENV DEBIAN_FRONTEND=noninteractive

RUN apt update \
&& apt upgrade -y \
&& apt install -y --no-install-recommends \
build-essential gcc-multilib g++-multilib cmake git zip

WORKDIR /usr/src/creamlinux
101 changes: 90 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,25 +1,104 @@
# Creamlinux
CreamApi(dlc unlocker) for Linux.
A CreamAPI clone for Linux.

## BIG NOTICE PLEASE READ
This has primarily been made for my personal use, however I have decided to open source it. A lot of the code is based on hookey, which means this will work for HOI4 but other games are unknown. Maybe don't try it on VAC-secure games. THIS WILL NOT WORK THROUGH WINE/PROTON (maybe)
Since 20PercentRendered has archived the repo, I have decided to fork and support it as far as I can.

## Usage
1. build the project with `sh build.sh`.
## Support
This *should* work for any native Linux Steam title that doesn't block LD_PRELOAD. It does not work with Proton or Wine - use SmokeAPI or other alternatives made specifically for Windows instead.

2. Copy build/lib folder contents to the game folder.
3. Then set steam launch params: `./cream.sh %command%`
4. If you copied an existing cream_api.ini, make sure the line endings are set to linux line endings, otherwise this will not work (just open it and save it again)
The following games have been tested and confirmed to work:

When the dialog pops up, it will look a bit strange due to steam's bundled deps being ancient (gtk2 is seriously out of date). If you are running on Arch, you can run steam-native.
- Stellaris
- Hearts Of Iron IV
- Europa Universalis IV
- Crusader Kings II
- Crusader Kings III
- PAYDAY 2

## Installation
The easiest way of installing is using **Novattz**'s Python script: https://github.com/Novattz/creamlinux-installer
It automatically downloads and sets up creamlinux for Steam games that you choose, as well as fetching all DLC IDs for it. Keep in mind that you will still need the actual, **up-to-date** DLC files in the game. The install script and creamlinux do **not** automatically download any game content. You will have to run it again if new DLCs are released for a game.

If you want to load cream_api.ini from a separate path, specify the path with CREAM_CONFIG_PATH;
If the script does not work for you, you can install `creamlinux` manually. Beware that you will have to manually update `cream_api.ini` to contain the DLC IDs for the games that you choose.

## Manual Installation
0. You will need the actual, **up-to-date** DLC files in the game. Creamlinux does **not** auto-download anything
1. Download the [latest](https://github.com/anticitizn/creamlinux/releases/latest/download/creamlinux.zip) release of Creamlinux
2. Unzip it and copy the files to the game's directory
3. Set the game's steam launch params to `sh ./cream.sh %command%`
4. Launch the game and have fun!

The list of "supported" DLCs is stored in `cream_api.ini`. If you want to test creamlinux on a new game or a new DLC has just come out, you can add more entries here manually.

If that doesn't work, please check the Troubleshooting section below.

## Building from source
0. Ensure you have all build dependencies installed:
- On Ubuntu: `build-essential` `gcc-multilib` `g++-multilib` `cmake` `git`
- On Arch: `base-devel` `multilib-devel` `cmake` `git`

1. Clone the project:
```
git clone https://github.com/anticitizn/creamlinux
```
2. Build the project:
```
sh ./build.sh
```

3. Copy `output` folder contents to the game folder
4. Set the game's steam launch params to `sh ./cream.sh %command%`

Alternatively, if you have Docker installed, you can just run `docker compose up`

# Troubleshooting
## Red triangles next to DLCs
This is normal. The DLCs should still work.

![Red triangles next to DLCs are normal](https://cdn.discordapp.com/attachments/663174968791662594/1093109044295766106/image.png)

## DLCs don't work
Have you made sure to download the latest version of the DLC files? Sometimes unrelated patches or updates to the game will modify some DLC files, and creamlinux is currently somewhat sensitive to outdated files.

## Game not starting after enabling creamlinux
Are you sure that the creamlinux files are at the game's root directory and not in a subfolder?

Try setting the executable flag of the `cream.sh` script (it should be set already, but just in case):
```
chmod +x cream.sh
```

## It doesn't work with Proton or Wine
Creamlinux is specifically made for native Linux games. If you are using a compatibility layer, use alternatives made specifically for Windows (e.g. SmokeAPI, regular CreamAPI or whatever).

## Nothing helped!
Please collect a log using the instructions below as well as an overview of the game's directory using `ls -lh; ls -lh */`, then post an issue describing your situation [here](https://github.com/anticitizn/creamlinux/issues/new).

## Gathering logs
If using a KDE environment, set your game launch options to this:
```
konsole --hold -e sh ./cream.sh %command%
```
Or if you are using Gnome environment, you can set your launch options to this:
```
gnome-terminal -- sh -c "./cream.sh %command%; exec bash"
```
If using neither, install `konsole` and follow the KDE step.
Then launch the game (skip any launchers like the Paradox launcher if possible, they interfere with the logging). Wait for the game to load if applicable, close it, then copy and paste the contents of the terminal.

# Advanced
If you want to load `cream_api.ini` from a specific path, specify the path with `CREAM_CONFIG_PATH` in the launch options.

## Credits
The many contributors who submitted bugfixes, tested games and updated the list of DLC IDs :)

[Novattz](https://github.com/Novattz) for [creamlinux-installer](https://github.com/Novattz/creamlinux-installer)

[Rosentti](https://github.com/Rosentti) for originally creating and maintaining this project

[pulzed](https://github.com/pulzed) for [mINI](https://github.com/pulzed/mINI)(ini.h)

Valve for steamworks
[Valve](https://www.valvesoftware.com/) for [steamworks](https://partner.steamgames.com/)

[gabime](https://github.com/gabime) for [spdlog](https://github.com/gabime/spdlog)

Expand Down
21 changes: 16 additions & 5 deletions build.sh
100755 → 100644
Original file line number Diff line number Diff line change
@@ -1,6 +1,17 @@
#!/bin/bash
#!/bin/sh
mkdir build
cd build
cmake ..
make
cp ../package/* ./lib/
mkdir build/32
mkdir build/64
mkdir output

cd build/32
cmake ../.. -DCMAKE_CXX_FLAGS=-m32 -DCMAKE_C_FLAGS=-m32
make -j12
cp lib/* ../../output/

cd ../..

cd build/64
cmake ../.. -DCMAKE_CXX_FLAGS=-m64 -DCMAKE_C_FLAGS=-m64
make -j12
cp lib/lib64Creamlinux.so ../../output/
7 changes: 7 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
services:
creamlinux-build:
build: .
container_name: creamlinux_build
volumes:
- .:/usr/src/creamlinux/
command: bash -c "sh ./build.sh && cd output && zip -r creamlinux.zip *"
File renamed without changes.
File renamed without changes.
4 changes: 2 additions & 2 deletions steam/isteamapps.h → ext/steam/isteamapps.h
Original file line number Diff line number Diff line change
Expand Up @@ -113,8 +113,8 @@ class ISteamApps
#define STEAMAPPS_INTERFACE_VERSION "STEAMAPPS_INTERFACE_VERSION008"

// Global interface accessor
inline ISteamApps *SteamApps();
STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamApps *, SteamApps, STEAMAPPS_INTERFACE_VERSION );
//CREAM_COMMENTED inline ISteamApps *SteamApps();
//CREAM_COMMENTED STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamApps *, SteamApps, STEAMAPPS_INTERFACE_VERSION );

// callbacks
#if defined( VALVE_CALLBACK_PACK_SMALL )
Expand Down
File renamed without changes.
18 changes: 9 additions & 9 deletions steam/isteamclient.h → ext/steam/isteamclient.h
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ class ISteamClient
virtual ISteamGameSearch *GetISteamGameSearch( HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0;

// Deprecated. Applications should use SteamAPI_RunCallbacks() or SteamGameServer_RunCallbacks() instead.
STEAM_PRIVATE_API( virtual void RunFrame() = 0; )
virtual void RunFrame() = 0;

// returns the number of IPC calls made since the last time this function was called
// Used for perf debugging so you can understand how many IPC calls your game makes per frame
Expand All @@ -116,7 +116,7 @@ class ISteamClient
virtual ISteamHTTP *GetISteamHTTP( HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0;

// Deprecated - the ISteamUnifiedMessages interface is no longer intended for public consumption.
STEAM_PRIVATE_API( virtual void *DEPRECATED_GetISteamUnifiedMessages( HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0 ; )
virtual void *DEPRECATED_GetISteamUnifiedMessages( HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0 ;

// Exposes the ISteamController interface - deprecated in favor of Steam Input
virtual ISteamController *GetISteamController( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0;
Expand All @@ -137,9 +137,9 @@ class ISteamClient
virtual ISteamHTMLSurface *GetISteamHTMLSurface(HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char *pchVersion) = 0;

// Helper functions for internal Steam usage
STEAM_PRIVATE_API( virtual void DEPRECATED_Set_SteamAPI_CPostAPIResultInProcess( void (*)() ) = 0; )
STEAM_PRIVATE_API( virtual void DEPRECATED_Remove_SteamAPI_CPostAPIResultInProcess( void (*)() ) = 0; )
STEAM_PRIVATE_API( virtual void Set_SteamAPI_CCheckCallbackRegisteredInProcess( SteamAPI_CheckCallbackRegistered_t func ) = 0; )
virtual void DEPRECATED_Set_SteamAPI_CPostAPIResultInProcess( void (*)() ) = 0;
virtual void DEPRECATED_Remove_SteamAPI_CPostAPIResultInProcess( void (*)() ) = 0;
virtual void Set_SteamAPI_CCheckCallbackRegisteredInProcess( SteamAPI_CheckCallbackRegistered_t func ) = 0;

// inventory
virtual ISteamInventory *GetISteamInventory( HSteamUser hSteamuser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0;
Expand All @@ -159,20 +159,20 @@ class ISteamClient
// Steam Remote Play interface
virtual ISteamRemotePlay *GetISteamRemotePlay( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion ) = 0;

STEAM_PRIVATE_API( virtual void DestroyAllInterfaces() = 0; )
virtual void DestroyAllInterfaces() = 0;

};
#define STEAMCLIENT_INTERFACE_VERSION "SteamClient020"

#ifndef STEAM_API_EXPORTS

// Global ISteamClient interface accessor
inline ISteamClient *SteamClient();
STEAM_DEFINE_INTERFACE_ACCESSOR( ISteamClient *, SteamClient, SteamInternal_CreateInterface( STEAMCLIENT_INTERFACE_VERSION ), "global", STEAMCLIENT_INTERFACE_VERSION );
//inline ISteamClient *SteamClient();
//STEAM_DEFINE_INTERFACE_ACCESSOR( ISteamClient *, SteamClient, SteamInternal_CreateInterface( STEAMCLIENT_INTERFACE_VERSION ), "global", STEAMCLIENT_INTERFACE_VERSION );

// The internal ISteamClient used for the gameserver interface.
// (This is actually the same thing. You really shouldn't need to access any of this stuff directly.)
inline ISteamClient *SteamGameServerClient() { return SteamClient(); }
//inline ISteamClient *SteamGameServerClient() { return SteamClient(); }

#endif

Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Loading