Pembuka DLC yang Sah untuk Steamworks
? Membuka Kunci DLC yang Sah
? Emulasi inventaris
Operasi tanpa konfigurasi
Beberapa metode instalasi:
?️ Modus toko
? Modus permainan
? Modus kait
? Modus proksi
? Unduh rilis terbaru
Topik forum SmokeAPI
SmokeAPI adalah pembuka kunci DLC untuk game yang dimiliki secara sah di akun Steam Anda. Ini mencoba memalsukan game yang menggunakan Steamworks SDK agar percaya bahwa Anda memiliki DLC yang diinginkan. Namun, SmokeAPI tidak mengubah SDK Steamworks lainnya, sehingga fitur seperti multipemain, pencapaian, dll. tetap berfungsi penuh.
SmokeAPI bertujuan untuk mendukung semua versi SteamAPI yang dirilis. Ketika menemukan versi antarmuka baru yang tidak didukung, versi tersebut akan kembali ke versi terbaru yang didukung. Di bawah ini adalah daftar versi antarmuka yang didukung:
Klien ISteam v6 — v20. (Versi sebelum 6 tidak berisi antarmuka terkait DLC apa pun)
ISteamApps v2 — v8. (Versi 1 tidak berisi fungsi terkait DLC apa pun)
ISteamUser v12 — v21. (Versi sebelum 12 tidak mengandung fungsi terkait DLC apa pun)
Inventaris ISteam v1 — v3.
Inventaris Steam tidak berfungsi di semua game dengan inventaris Steam karena penerapan khusus dan pemeriksaan online. Daftar permainan yang emulasi inventarisnya terbukti berhasil adalah sebagai berikut:
Proyek Musim Dingin
Simulator Truk Euro 2
Hero Siege (jika melewati EAC)
Peringatan | Silakan lanjutkan instalasi dengan risiko Anda sendiri. Penggunaan pembuka kunci ini berarti melanggar satu atau lebih persyaratan layanan, yang dapat mengakibatkan hilangnya akun Anda secara permanen. |
SmokeAPI mendukung 2 mode instalasi utama: mode Store dan mode Game , yang dijelaskan di bagian selanjutnya.
Catatan | Perlu dicatat bahwa petunjuk berikut menjelaskan metode instalasi manual . Anda bisa mendapatkan keuntungan dari instalasi otomatis dan konfigurasi GUI dengan menggunakan Koalageddon v2. |
Dalam mode instalasi ini, SmokeAPI dimuat ke dalam proses Steam, yang membuatnya dapat memengaruhi semua game Steam.
Unduh zip rilis Koaloader terbaru dari Koaloader Releases.
Dari arsip Koaloader, buka paket version.dll
dari version-32
, dan letakkan di direktori Steam [1] .
Di direktori Steam [1] buat file konfigurasi Koaloader berikut:
Koaloader.config.json
{
"auto_load" : false ,
"targets" : [
" Steam.exe "
],
"modules" : [
{
"path" : " SmokeAPI.dll " ,
"required" : true
}
]
}
Unduh zip rilis SmokeAPI terbaru dari SmokeAPI Releases.
Dari arsip SmokeAPI buka paket steam_api.dll
, ganti namanya menjadi SmokeAPI.dll
, dan letakkan di direktori Steam [1] .
Dalam mode instalasi ini, SmokeAPI dimuat ke dalam proses permainan, yang membatasinya hanya pada permainan tertentu saja. Mode ini sendiri mendukung 2 mode yaitu mode hook dan mode proxy. Coba pasang unlocker dalam mode kait terlebih dahulu. Jika tidak berhasil, coba instal dalam mode proxy.
Unduh zip rilis Koaloader terbaru dari Koaloader Releases.
Dari arsip Koaloader, buka paket version.dll
dari versi-32/64, tergantung pada bitness game, dan letakkan di sebelah file exe game.
Unduh zip rilis SmokeAPI terbaru dari SmokeAPI Releases.
Dari arsip SmokeAPI, buka paket steam_api.dll
/ steam_api64.dll
, tergantung pada bitness game, ganti namanya menjadi SmokeAPI.dll
, dan letakkan di sebelah file exe game.
Temukan file steam_api.dll
/ steam_api64.dll
di direktori game, dan ganti namanya menjadi steam_api_o.dll
/ steam_api64_o.dll
.
Unduh zip rilis SmokeAPI terbaru dari SmokeAPI Releases.
Dari arsip SmokeAPI, buka paket steam_api.dll
/ steam_api64.dll
, tergantung pada bitness game, dan letakkan di sebelah file DLL steam_api asli.
Jika unlocker tidak berfungsi seperti yang diharapkan, harap baca sepenuhnya Petunjuk Instalasi Generic Unlocker sebelum mencari dukungan di topik forum SmokeAPI.
Catatan | Dokumen ini menjelaskan konfigurasi untuk SmokeAPI versi 2. Anda dapat menemukan dokumentasi versi 1 di sini. |
SmokeAPI tidak memerlukan konfigurasi manual apa pun. Secara default, ia menggunakan opsi paling masuk akal dan mencoba membuka kunci semua DLC yang bisa dibuka. Namun, mungkin ada situasi di mana Anda memerlukan perilaku yang lebih disesuaikan, seperti menonaktifkan DLC tertentu, atau mengaktifkan beberapa di antaranya secara selektif. Dalam hal ini Anda dapat menggunakan file konfigurasi SmokeAPI.config.json yang dapat Anda temukan di sini, di repositori ini atau di zip rilis. Untuk menggunakannya, cukup letakkan di sebelah SmokeAPI DLL. Itu akan dibaca pada setiap peluncuran game atau toko. Jika file konfigurasi tidak ada, nilai default yang ditentukan di bawah ini akan digunakan. File konfigurasi diharapkan sesuai dengan standar Json.
logging
Mengalihkan pembuatan file SmokeAPI.log.log
.
Jenis | Boolean |
Bawaan | |
unlock_family_sharing
Hanya mode toko . Mengalihkan bypass Keluarga Berbagi, yang memungkinkan peminjam perpustakaan bersama untuk memulai dan terus bermain game saat pemilik perpustakaan juga bermain.
Jenis | Boolean |
Bawaan | |
default_app_status
Opsi ini menetapkan perilaku membuka kunci DLC default.
Nilai yang mungkin |
| ||||
Jenis | Rangkaian | ||||
Bawaan | |
override_app_status
Opsi ini mengesampingkan status semua DLC milik ID aplikasi tertentu [2] .
Nilai yang mungkin | Objek dengan pasangan nilai kunci, yang kuncinya terkait dengan ID aplikasi, dan nilai sesuai dengan status aplikasi. Nilai status aplikasi yang mungkin ditentukan dalam opsi |
Jenis | Obyek |
Bawaan | |
override_dlc_status
Opsi ini mengesampingkan status masing-masing DLC, terlepas dari status aplikasi terkait.
Nilai yang mungkin | Objek dengan pasangan nilai kunci, yang kuncinya terkait dengan ID aplikasi, dan nilai sesuai dengan status aplikasi. Nilai status aplikasi yang mungkin ditentukan dalam opsi |
Jenis | Obyek |
Bawaan | |
auto_inject_inventory
Mengalihkan apakah SmokeAPI harus secara otomatis memasukkan daftar semua item inventaris terdaftar, ketika game menanyakan inventaris pengguna
Jenis | Boolean |
Bawaan | |
extra_inventory_items
Daftar ID item inventaris [2] yang akan ditambahkan selain item yang dimasukkan secara otomatis.
Jenis | Array (dari Integer) |
Bawaan | |
$version
Bidang teknis yang disediakan untuk digunakan oleh alat seperti editor konfigurasi GUI. Jangan ubah nilai ini.
Jenis | Bilangan bulat |
Bawaan | |
extra_dlcs
Lihat Cara kerja SmokeAPI di game dengan DLC dalam jumlah besar untuk memahami kasus penggunaan opsi ini.
Nilai yang mungkin | Objek dengan pasangan nilai kunci, yang kuncinya terkait dengan ID aplikasi, dan nilai dengan objek yang berisi ID DLC. Formatnya sama dengan konfigurasi GitHub yang disebutkan di atas. |
Jenis | Obyek |
Bawaan | |
store_config
Hanya mode toko . Objek yang menentukan offset yang diperlukan untuk operasi mode penyimpanan. Ini akan menimpa konfigurasi yang diambil dari sumber jarak jauh atau cache lokal. Jangan ubah nilai ini kecuali Anda tahu apa yang Anda lakukan.
Jenis | Obyek |
Bawaan | Lihat konfigurasi online |
{
"$version" : 2 ,
"logging" : true ,
"unlock_family_sharing" : true ,
"default_app_status" : " unlocked " ,
"override_app_status" : {
"1234" : " original " ,
"4321" : " unlocked "
},
"override_dlc_status" : {
"1234" : " original " ,
"4321" : " unlocked " ,
"5678" : " locked "
},
"auto_inject_inventory" : true ,
"extra_inventory_items" : [],
"extra_dlcs" : {
"1234" : {
"dlcs" : {
"56789" : " Example DLC 1 "
}
},
"4321" : {
"dlcs" : {
"98765" : " Example DLC 2 " ,
"98766" : " Example DLC 3 "
}
}
},
"store_config" : {
"client_engine_steam_client_internal_ordinal" : 12 ,
"steam_client_internal_interface_selector_ordinal" : 18 ,
"vstdlib_callback_address_offset" : 20 ,
"vstdlib_callback_data_offset" : 0 ,
"vstdlib_callback_interceptor_address_offset" : 1 ,
"vstdlib_callback_name_offset" : 4
}
}
Beberapa game yang memiliki DLC dalam jumlah besar memulai verifikasi kepemilikan dengan menanyakan Steamworks API untuk daftar semua DLC yang tersedia. Setelah game menerima daftarnya, game akan memeriksa setiap item dan memeriksa kepemilikannya. Masalah ini muncul karena respons dari Steamworks SDK mungkin maksimal 64, bergantung pada berapa banyak DLC yang tidak dimiliki pengguna. Untuk mengatasi masalah ini, SmokeAPI akan membuat permintaan web ke Steam API untuk daftar lengkap DLC, yang sebagian besar berfungsi dengan baik. Sayangnya, API web pun tidak menyelesaikan semua masalah kami, karena hanya akan mengembalikan DLC yang tersedia di toko Steam. Artinya, DLC tanpa penawaran toko khusus, seperti DLC pre-order akan ditinggalkan. Di situlah opsi konfigurasi extra_dlcs
berperan. Anda dapat menentukan ID DLC yang hilang di sana, dan SmokeAPI akan menyediakannya untuk game. Namun, hal ini menimbulkan perlunya konfigurasi manual, yang bertentangan dengan cita-cita proyek ini. Untuk mengatasi masalah ini, SmokeAPI juga akan mengambil daftar DLC tambahan yang disimpan secara manual di repositori GitHub. Tujuan dari dokumen ini adalah untuk memuat semua ID DLC yang tidak memiliki halaman toko Steam. Hal ini memungkinkan SmokeAPI untuk membuka kunci semua DLC tanpa file konfigurasi sama sekali. Jangan ragu untuk melaporkan game topik forum SmokeAPI yang memiliki lebih dari 64 DLC, dan memiliki DLC tanpa halaman toko khusus. ID tersebut akan ditambahkan ke daftar ID DLC yang hilang untuk memfasilitasi pengoperasian tanpa konfigurasi.
CMake v3.24 (Pastikan cmake tersedia dari PowerShell)
Visual Studio 2022 [3] .
Diuji pada Windows 11 SDK (10.0.22621.0) [3] .
Bangun proyeknya
.build.ps1 <lengkungan> <konfigurasi>
Di mana
lengkungan | |
konfigurasi | |
Misalnya:
.build.ps1 32 Debug
Proyek ini menggunakan proyek sumber terbuka yang ditentukan dalam KoalaBox Readme
Perangkat lunak ini dilisensikan berdasarkan Unlicense, ketentuannya tersedia di UNLICENSE.txt